我有一个小型 java 应用程序,我想在其中放置一些数据,并将其列放在现有的 JTable 中。
这是我的列和数据;
String[][] data; // this object gets it's contents from another function
String[] columns={"Name","Value"}; //these are the columns that should be added to JTable
Run Code Online (Sandbox Code Playgroud)
那么我应该怎么做才能添加和查看“现有”JTable 中的数据?我不想创建动态 JTable。
编辑:
我把它写到了上面填充我的变量的函数中。之后如何刷新我的 JTable?
tblSonuc=new JTable(data,columns);
Run Code Online (Sandbox Code Playgroud)
要动态添加行,请使用TableModel
. 一个简单的已经实现的是DefaultTableModel
. 只需将模型设置为您的JTable
String[] columns = {"Column 1","Column 2"};
DefaultTableModel model = new DefaultTableModel(columns, 0); <-- 0 is number of rows
JTable table = new JTable(model);
Run Code Online (Sandbox Code Playgroud)
只使用addRow
模型的方法,它采用 aObject[]
或 a Vector
。所以你可以这样做
Object[] rowData { data1, data2 };
model.addRow(rowData);
Run Code Online (Sandbox Code Playgroud)
有关更多方法,请参阅如何使用表和DefaultTableModel。
编辑
“这个字符串数组已经在A类中创建并填充。我只是从A中取出它并放入我在B类中的新变量中”
如果要从类中添加二维数组中的数据,只需循环遍历并将其添加到模型中
A a = new A();
String[][] students = a.getDtudents();
for (String[] row : students) {
model.addRow(row):
}
Run Code Online (Sandbox Code Playgroud)
编辑 2
如果您使用的是 GUI Builder,JTable
则DefaultTableModel
默认为模型。要设置模型的设置,只需
现在说你想在一个actionPerformed
Just do this 中访问模型
private void actionPerformed(java.awt.event.ActionPerformed e) {
DefaultTableModel model = (DefaultTableModel)jTable1.getModel();
model.setRorCount(0);
A a = new A();
String[][] students = a.getStudents();
for (String[] row : students) {
model.addRow(row);
}
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
9186 次 |
最近记录: |