我已经在这个网站上搜索了几个小时,关于如何将我的按钮连接到一个已经存在的表,这个表只需单击swing控件,添加一个表并通过改变字段来创建属性。
表的变量名是'table'。
当遇到这行代码时:
table.getModel().insertRow(table.getRowCount(),new Object[]{nome[i],data[i]});
'insertRow'部分被重做,我似乎无法修复它。
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
String direcdate=direc1.getText();
File folder = new File(direcdate);
File[] listOfFiles=folder.listFiles();
String[] nome = new String[250];
String[] data = new String[250];
int i=0;
for (File listOfFile : listOfFiles) {
SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy");
if (listOfFile.isFile()) {
nome[i]= listOfFile.getName ();
data[i] =sdf.format(listOfFile.lastModified());
i++;
}
else if (listOfFile.isDirectory()) {
nome[i]= "Folder: " + listOfFile.getName ();
data[i] =sdf.format(listOfFile.lastModified());
i++;
}
}
for(int increm=0;increm<i;increm++)
{
table.getModel().insertRow(table.getRowCount(),new Object[]{nome[i],data[i]});
}
}
有任何想法或建议吗?
编辑:表格模型所在的位置: 公共类GAPAC_TESTE扩展了javax.swing.JFrame {
public GAPAC_TESTE() {
initComponents();
ultimaalt.setText("0");
jTextPane2.setText("Após escolher a diretoria, escolha uma das opções.");
DefaultTableModel model = new javax.swing.table.DefaultTableModel();
table = new javax.swing.JTable(model);
}
答案 0 :(得分:4)
table.getModel().
该方法返回一个TableModel。您是否查看了TableModel接口的API?它不包含insertRow(...)
方法。
DefaultTableModel
具有insertRow(...)
方法。因此,假设您的表使用的是DefaultTableModel,则代码为:
DefaultTableModel model = (DefaultTableMode)table.getModel();
model.insertRow(...);
不要总是在单个陈述中写下您的代码。将语句分解为多个语句,以便您准确理解语句的哪个部分导致问题,并确保将变量分配给正确的类。
答案 1 :(得分:0)
如果实施TableModel
,您将能够准确确定如何添加数据以及在表格中显示哪些数据类型。