在此图片中,返回表头值显示在复选框中。如何在jtable中动态设置jcheckbox
这里JTable中值从数据库
我尝试过,但ClassCastException异常发生,因为转换为字符串
布尔值,我不知道为什么会出现错误
这是我的代码
static Object[][] data;
String[] colName = {"Book", "Member", "Issue Date", "Return Date ",
"Remark","Return" };
List<Issue>issues=ServiceFactory.getIssueServiceImpl().findAllIssue();
data=new Object[issues.size()][6];
for(Issue issue:issues){
data[i][0]=issue.getMemberId().getName();
data[i][1]=issue.getBookId().getName();
data[i][2]=issue.getIssueDate();
data[i][3]=issue.getReturnDate();
data[i][4]=issue.getRemark();
data[i][5]=issue.getStatus();
i++;
}
这里出现异常
DefaultTableModel dtm = new DefaultTableModel(data, colName);{
public Class getColumnClass(int c) {
switch (c) {
case 0: return Boolean.class;
default: return String.class;
}
} };
retunTable = new JTable();
retunTable.setModel(dtm);
retunTable.getTableHeader().setReorderingAllowed(false);
return retunTable;
如果你知道关于这个请分享答案在这里...
编辑
DefaultTableModel dtm = new DefaultTableModel(data, colName);{
public Class getColumnClass(int c) {
switch (c) {
case 0: return Boolean.class;
default: return String.class;
}
} };
dtm .addRow(data);
retunTable = new JTable();
retunTable.setModel(dtm);
retunTable.getTableHeader().setReorderingAllowed(false);
return retunTable;
您将需要实现表格单元格渲染器。 – Sanjeev
您应该为您提供JTable的自定义单元格渲染器。请查看http://docs.oracle.com/javase/tutorial/uiswing/components/table.html中的'ColorRenderer'类 –
'issue.getStatus()'返回什么?一个'String'或一个'boolean'? – MadProgrammer