質問編集履歴

1

現在使っているコードを抜粋して、Sampleコードを作りました。

2016/12/24 11:22

投稿

travel_saki
travel_saki

スコア12

test CHANGED
File without changes
test CHANGED
@@ -13,3 +13,153 @@
13
13
  コードでは「Boolean.class」と指定してセルに値を入れています。
14
14
 
15
15
  正常にJCheckBoxがJTableの中に表示されない理由を、分かりやすく教えてもらえませんか?
16
+
17
+
18
+
19
+
20
+
21
+
22
+
23
+
24
+
25
+ ーーーーーーーーーーーーーーーーーーーーーーー追記------------------------
26
+
27
+
28
+
29
+ 情報の追加が遅くなり、申し訳ありません。
30
+
31
+ 現在使用しているコードを抜粋してSampleコードを作成したので、至らない点がありましたらお願いします。
32
+
33
+
34
+
35
+ 【コード】
36
+
37
+ package view;
38
+
39
+
40
+
41
+ import javax.swing.JFrame;
42
+
43
+ import javax.swing.JScrollPane;
44
+
45
+ import javax.swing.JTable;
46
+
47
+ import javax.swing.SwingConstants;
48
+
49
+ import javax.swing.table.DefaultTableCellRenderer;
50
+
51
+ import javax.swing.table.DefaultTableColumnModel;
52
+
53
+ import javax.swing.table.DefaultTableModel;
54
+
55
+ import javax.swing.table.TableColumn;
56
+
57
+
58
+
59
+ public class Sample extends JFrame {
60
+
61
+
62
+
63
+ private DefaultTableModel tableModel;
64
+
65
+ private JScrollPane scrollPane;
66
+
67
+ private JTable table;
68
+
69
+
70
+
71
+ String[] name = {"フラグ"};
72
+
73
+
74
+
75
+ public Sample() {
76
+
77
+ //タイトル等
78
+
79
+ setTitle("Sample");
80
+
81
+ setDefaultCloseOperation(EXIT_ON_CLOSE);
82
+
83
+ setLayout(null);
84
+
85
+
86
+
87
+ //今後、属性を複数増やすためにScrollPane実装
88
+
89
+ scrollPane = new JScrollPane();
90
+
91
+ scrollPane.setBounds(20, 170, 150, 80);
92
+
93
+ add(scrollPane);
94
+
95
+
96
+
97
+
98
+
99
+ //例として属性追加
100
+
101
+ String[] columnNames = {"フラグ"};
102
+
103
+ Object[] temp = {Boolean.class};
104
+
105
+
106
+
107
+
108
+
109
+ tableModel = new DefaultTableModel(columnNames, 0);
110
+
111
+ table = new JTable(tableModel);
112
+
113
+ table.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
114
+
115
+
116
+
117
+ DefaultTableColumnModel columnModel = (DefaultTableColumnModel)table.getColumnModel();
118
+
119
+ TableColumn column0 = columnModel.getColumn(0);
120
+
121
+
122
+
123
+ DefaultTableCellRenderer alignCenter = new DefaultTableCellRenderer();
124
+
125
+ alignCenter.setHorizontalAlignment(SwingConstants.CENTER);
126
+
127
+
128
+
129
+ //セルの大きさ
130
+
131
+ column0.setPreferredWidth(150);
132
+
133
+
134
+
135
+ //行の追加
136
+
137
+ tableModel.addRow(temp);
138
+
139
+
140
+
141
+ scrollPane.setViewportView(table);
142
+
143
+
144
+
145
+ //可視化
146
+
147
+ setVisible(true);
148
+
149
+ }
150
+
151
+
152
+
153
+ public static void main(String[] args) {
154
+
155
+ //Sampleの実行
156
+
157
+ new Sample();
158
+
159
+
160
+
161
+ }
162
+
163
+
164
+
165
+ }