我有一个 JFrame
表单,其中包含 JTextField
、JCombobox
等,我能够将这些值接收到变量,现在我想要在用户单击“添加”或类似操作时将接收到的数据添加到新行中的 JTable
。
我已经使用 net-beans 创建了 JTable
问题是将这些变量中的数据添加到表的行的代码是什么。一个基本的例子将不胜感激。我尝试了很多示例并将代码添加到 JButton
的 ActionListener
但没有任何反应。
我试过的例子是。 How to add row in JTable?和 How to add rows to JTable with AbstractTableModel method?
如有任何帮助,我们将不胜感激。
最佳答案
Peeskillet's lame tutorial for working with JTables in Netbeans GUI Builder
- 设置表格列标题
- 在设计 View 中突出显示表格,然后转到最右侧的属性 Pane 。应该是一个显示“属性”的选项卡。确保突出显示表格而不是它周围的滚动 Pane ,否则下一步将无法进行
- 单击属性 model 右侧的 ... 按钮。应出现一个对话框。
- 将行设置为 0,设置所需的列数及其名称。
在框架的某处添加一个按钮。当用户准备好提交一行时,将点击此按钮
- 右键单击按钮并选择
Events -> Action -> actionPerformed
您应该会看到如下自动生成的代码
private void jButton1ActionPerformed(java.awt.event.ActionEvent) {}
- 右键单击按钮并选择
jTable1
将有一个DefaultTableModel
。您可以使用您的数据向模型添加行private void jButton1ActionPerformed(java.awt.event.ActionEvent) { String data1 = something1.getSomething(); String data2 = something2.getSomething(); String data3 = something3.getSomething(); String data4 = something4.getSomething(); Object[] row = { data1, data2, data3, data4 }; DefaultTableModel model = (DefaultTableModel) jTable1.getModel(); model.addRow(row); // clear the entries. }
因此,对于来自几个文本字段、组合框和复选框的每一组数据,您可以在每次按下按钮时收集这些数据,并将其作为一行添加到模型中。
关于java - 如何根据从 jtextfield 和组合框接收的值将数据行添加到 Jtable,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21135452/