我已阅读本网站的其中一个问题。因为我和那个问同样问题的人有同样的问题,我想做一个跟进问题。你如何将其纳入代码:
提前致谢。我在这部分课程中遇到了很多困难。因为我只知道
tablePersonalProperty.setModel(DbUtils.resultSetToTableModel(rs));
显示表格中的所有项目时。我需要的是显示我从主表中选择的具有相同ID的项目...
答案 0 :(得分:0)
在我们帮助您编写代码之前,我们需要更多信息。 你的表是否都有完全相同的列? 您是否已经使用自己的自定义数据模型?如果没有,那么你可能需要自己尝试。我不能为你写这个,因为我不知道你需要在你的模型中包含什么。如果您使用的是netbeans,则可以使用表单设计器来帮助您编写表模型。将它添加到JPanel的JFrame后,只需查看JTable的属性即可。无论如何,我最终创建了自己的代码,但Netbeans生成的代码帮助我开始了。
答案 1 :(得分:0)
此示例代码将帮助您执行所需操作,它显示如何在行中的单击事件中将表行从一个表移动到另一个表,
public class InsertRows{
public static void main(String[] args) {
new InsertRows();
}
public InsertRows(){
final JTable table, table2;
final DefaultTableModel model, model2;
JFrame frame = new JFrame("Inserting rows in the table!");
String data[][] = {{"Vinod","100"},{"Raju","200"},{"Ranju","300"}};
String col[] = {"Name","code"};
Object[][] selrowData = {};
model = new DefaultTableModel(data,col);
model2 = new DefaultTableModel(selrowData,col);
GridLayout gl = new GridLayout(2,1);
table = new JTable(model);
table2 = new JTable(model2);
//Insert first position
model.insertRow(0,new Object[]{"Ranjan","50"});
//Insert 4 position
model.insertRow(3,new Object[]{"Amar","600"});
//Insert last position
model.insertRow(table.getRowCount(),new Object[]{"Sushil","600"});
ListSelectionModel cellSelectionModel = table.getSelectionModel();
cellSelectionModel.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
cellSelectionModel.addListSelectionListener(new ListSelectionListener() {
public void valueChanged(ListSelectionEvent e) {
String selectedData = null;
String selectedData2 = null;
Object[][] val = {};
int selectedRow = table.getSelectedRow();
int selectedColumns = table.getColumnCount();
model2.insertRow(0,new Object[]{(String) table.getValueAt(selectedRow, selectedColumns-selectedColumns),(String) table.getValueAt(selectedRow, selectedColumns-1) });
}
});
frame.setLayout(gl);
frame.add(new JScrollPane(table));
frame.add(new JScrollPane(table2));
frame.setSize(600,600);
frame.setVisible(true);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}