如何将布尔 object 类型设置为 java 中的 table 列
How to set a Boolean object type to a table column in java
我有一个 JTable
,其中有 DefaultTableModel
。现在我想更改 table 列 headers 和列数据类型(例如:- 布尔值、字符串、Object 等)。我尝试做如下。
DefaultTableModel model = (DefaultTableModel) list_table.getModel();
list_table.setModel(new javax.swing.table.DefaultTableModel(new Object[][]{}, new String[]{"", "ID", "Name", "Age","Address", "Contact", "Gender", "Civil Status" }));
updateTable();
“ ”列 object 类型应为 boolean.But 我无法将 object 类型从 this.Also 更改为布尔值 我 运行 这个线程环境。
有什么想法。
您需要覆盖 getColumnClass
,例如,如果第 5 列(0 索引)是布尔值,您可以这样做:
@Override
public Class<?> getColumnClass(int columnIndex) {
Class classType = String.class;
switch (columnIndex) {
case 4:
classType = Boolean.class;
break;
}
return classType;
}
我有一个 JTable
,其中有 DefaultTableModel
。现在我想更改 table 列 headers 和列数据类型(例如:- 布尔值、字符串、Object 等)。我尝试做如下。
DefaultTableModel model = (DefaultTableModel) list_table.getModel();
list_table.setModel(new javax.swing.table.DefaultTableModel(new Object[][]{}, new String[]{"", "ID", "Name", "Age","Address", "Contact", "Gender", "Civil Status" }));
updateTable();
“ ”列 object 类型应为 boolean.But 我无法将 object 类型从 this.Also 更改为布尔值 我 运行 这个线程环境。
有什么想法。
您需要覆盖 getColumnClass
,例如,如果第 5 列(0 索引)是布尔值,您可以这样做:
@Override
public Class<?> getColumnClass(int columnIndex) {
Class classType = String.class;
switch (columnIndex) {
case 4:
classType = Boolean.class;
break;
}
return classType;
}