我有一个显示数据的表:ID,NAME,CATEGORY,COMPANY。从数据库中检索数据。我想将一个ComboBox添加到列CATEGORY。以便能够选择他们在数据库中的任何类别。
List<Item> item;
JTable itemTable = new JTable();
JScrollPane itemScroll = new JScrollPane();
DefaultTableModel itemmodel = new DefaultTableModel();
itemmodel.setRowCount(0);
item = model.getItem();
for (Item ite : item) {
itemmodel.addRow(new Object[] { ite.getId(), ite.getName(),
ite.getCategory(), ite.getCompany() });
}
item.clear();
然后我正确地将数据添加到JFrame并显示所有内容。我阅读了文档,但我不知道如何在我的例子中使用这些例子。
要显示相同的类别,请通过
单独下载jTable和数据 tablemodel.setRowCount(0);
category = model.getCategory();
for (Category cat: categoryList) {
tablemodel
.addRow(new Object[] { cat.getId(), cat.getName() });
}
categoryList.clear();
答案 0 :(得分:2)
答案 1 :(得分:1)
我这样解决了它看起来很棒。这是解决方案是否正确?如何在Combobox中存储类别ID?
itemmodel.setRowCount(0);
item = model.getItem();
people = model.getCategory();
for (Category cate : categoryList) {
categoryBox.addItem(cate.getName());
}
for (Item ite : item) {
itemmodel.addRow(new Object[] { ite.getId(),ite.getName(),
ite.getCategory(), ite.getCompany() });
}
item.clear();
TableColumn categoryColumn = itemTable.getColumnModel().getColumn(2);
categoryColumn.setCellEditor(new DefaultCellEditor(categoryBox));