java - 即使使用 getModel 也无法向 jTable 添加行

标签 java swing jtable defaulttablemodel

我已经在这个网站上搜索了好几个小时,关于如何让我的按钮与一个已经存在的表格成一行,这个表格通过简单地单击 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]});



            }


           } 

有什么想法或建议吗?

编辑:表格模型所在的位置: 公共(public)类 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);
}

最佳答案

table.getModel().

该方法返回一个 TableModel。你看过 TableModel 接口(interface)的 API 了吗?它不包含 insertRow(...) 方法。

DefaultTableModel 具有 insertRow(...) 方法。因此,假设您的表使用的是 DefaultTableModel,代码将是:

DefaultTableModel model = (DefaultTableMode)table.getModel();
model.insertRow(...);

不要总是在一个语句中编写代码。将语句分解为多个语句,以便您准确了解语句的哪一部分导致了问题,并确保将变量分配给正确的类。

关于java - 即使使用 getModel 也无法向 jTable 添加行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26427531/

相关文章:

java - 如何从 jtable 中删除指定行?

Java Swing - 使用 LayeredPane 实现布局

java - 堆栈问题,不存储值

java - 在单独的 Eclipse 类中将 Row 添加到 DefaultTableModel

java - 多个输出突然不写任何输出?

java - Java.Swing 是否有相当于 AS3 的 ADDED_TO_STAGE 事件?

java - 根据 JTable 中的第一列值为特定行着色?

java - 接口(interface)完整引用

java - 如何将 hexString 转换为 SWT Color?

Java反射: Invoke function in a inner static class