Naw*_*waz 14 java swing netbeans jtable gui-builder
我有一个JFrame具有JTextFields JCombobox等的表单,我能够将这些值接收到变量,现在我想JTable在用户单击Add或类似的东西时将接收到的数据添加到新行中.
我创建了JTable使用net-beans的问题是将这些变量中的数据添加到表行的代码.一个基本的例子将不胜感激.我曾试过无数例子,添加的代码来ActionListener的JButton,但没有任何反应.我试过的例子是.如何在JTable中添加行?以及如何使用AbstractTableModel方法向JTable添加行?
任何帮助,将不胜感激.
Pau*_*tha 25
Peeskillet在Netbeans GUI Builder中使用JTables的蹩脚教程
在框架上添加一个按钮.当用户准备提交行时,将单击此按钮
Events -> Action -> actionPerformed你应该看到如下自动生成的代码
private void jButton1ActionPerformed(java.awt.event.ActionEvent) {}
Run Code Online (Sandbox Code Playgroud)该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.
}
Run Code Online (Sandbox Code Playgroud)因此,对于每组数据(例如来自几个文本字段,组合框和复选框),您可以在每次按下按钮时收集该数据,并将其作为一行添加到模型中.
您可以使用此代码作为模板,请根据您的要求进行自定义.
DefaultTableModel model = new DefaultTableModel();
List<String> list = new ArrayList<String>();
list.add(textField.getText());
list.add(comboBox.getSelectedItem());
model.addRow(list.toArray());
table.setModel(model);
Run Code Online (Sandbox Code Playgroud)
这里DefaultTableModel用于添加行JTable,您可以在这里获得更多信息.
String[] tblHead={"Item Name","Price","Qty","Discount"};
DefaultTableModel dtm=new DefaultTableModel(tblHead,0);
JTable tbl=new JTable(dtm);
String[] item={"A","B","C","D"};
dtm.addRow(item);
Run Code Online (Sandbox Code Playgroud)
在这里;这是解决方案.
| 归档时间: |
|
| 查看次数: |
103912 次 |
| 最近记录: |