本文介绍了如何在JTable中动态添加行的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我想在JTable中动态添加行,我已经为此编写了以下代码:
I want to add the row dynamically in JTable and I have writen the following code for that:
tblTaskList = new JTable(); tblTaskList.setShowVerticalLines(false); tblTaskList.setCellSelectionEnabled(true); tblTaskList.setColumnSelectionAllowed(true); tblTaskList.setBorder(new LineBorder(null)); for (int count = 1; count <= 10; count++) { tblTaskList.setModel(new DefaultTableModel(new Object[][] { { count, "title1", "start", "stop", "pause", "status" }, }, new String[] { "status", "Task Title", "Start", "Stop", "Pause", "Status" })); } tblTaskList.getColumnModel().getColumn(0).setPreferredWidth(31); tblTaskList.getColumnModel().getColumn(1).setPreferredWidth(346); tblTaskList.getColumnModel().getColumn(2).setPreferredWidth(33); tblTaskList.getColumnModel().getColumn(3).setPreferredWidth(31); tblTaskList.getColumnModel().getColumn(4).setPreferredWidth(28); tblTaskList.setBounds(93, 34, 614, 160); frmTaskList.getContentPane().add(tblTaskList);问题是只添加了最后一行,即count打印第一列中的值10, ,,谁能解释如何解决这个问题?
The problem is that only the last row is added, i.e. count print the value 10 in first column,,,can anyone explain how to solve the problem?
推荐答案我也找到了一个解决方案,它运行成功
i Have also found one solution for this and it runs successfully
DefaultTableModel dm = new DefaultTableModel(0, 0); String header[] = new String[] { "Status", "Task Title", "Start", "Pause", "Stop", "Statulses" }; dm.setColumnIdentifiers(header); tblTaskList.setModel(dm); for (int count = 1; count <= 10; count++) { Vector<Object> data = new Vector<Object>(); data.add(count); data.add("Project Title" + count); data.add("Start"); data.add("Stop"); data.add("Pause"); data.add("Status"); System.out.println("test :- " + count); dm.addRow(data); }更多推荐
如何在JTable中动态添加行
发布评论