Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/303.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java DefaultTableModel getValueAt方法生成看似随机的结果_Java_Swing_Jtable_Defaulttablemodel - Fatal编程技术网

Java DefaultTableModel getValueAt方法生成看似随机的结果

Java DefaultTableModel getValueAt方法生成看似随机的结果,java,swing,jtable,defaulttablemodel,Java,Swing,Jtable,Defaulttablemodel,我有一个使用DefaultTableModel的带有JTable的GUI 声明了以下实例变量: boolean doRun = false; Class clazz; Object obyect; DefaultTableModel model; ArrayList<String> al = new ArrayList(); 当仅在JTable的第一行中添加描述时,上述代码生成: Description 0: Description 1: Description 2: Des

我有一个使用DefaultTableModel的带有JTable的GUI

声明了以下实例变量:

boolean doRun = false;
Class clazz;
Object obyect;
DefaultTableModel model;
ArrayList<String> al = new ArrayList();
当仅在JTable的第一行中添加描述时,上述代码生成:

Description 0: 
Description 1: 
Description 2: 
Description 3: 
Description 4: 
这表明它可以识别所有五行,但由于某些原因,读取这些行时会出错

我已经盯着同一行代码看了一个小时了,老实说,我不知道出了什么问题

提前感谢,,
Mike。

我的水晶球显示,您的表格仍在编辑第一个示例中的第5行,第二个示例中的第0行。在执行的操作中首先提交该编辑

if (table.isEditing()) {
    table.getCellEditor().stopCellEditing();
}

我的水晶球显示您的表格仍在编辑第一个示例中的第5行,第二个示例中的第0行。在执行的操作中首先提交该编辑

if (table.isEditing()) {
    table.getCellEditor().stopCellEditing();
}
然而,为什么我似乎不能在构造函数中这样做呢

您可以在表上设置一个属性来执行此操作。看

然而,为什么我似乎不能在构造函数中这样做呢


您可以在表上设置一个属性来执行此操作。请参见。

谢谢,这是为我做的:但是,为什么我似乎不能在构造函数中这样做呢?如果我只是执行stopCellEditing,我似乎会得到一个空指针;语句然后您可能还没有创建表,或者没有执行isEditing检查。但是在构造函数中停止编辑是没有意义的,因为此时表甚至还没有显示在屏幕上。谢谢,这对我来说是有意义的:但是,为什么我似乎不能在构造函数中这样做呢?如果我只是执行stopCellEditing,我似乎会得到一个空指针;语句然后您可能还没有创建表,或者没有执行isEditing检查。但是在构造函数中停止编辑没有任何意义,因为此时表甚至还没有显示在屏幕上。
Description 0: 
Description 1: 
Description 2: 
Description 3: 
Description 4: 
if (table.isEditing()) {
    table.getCellEditor().stopCellEditing();
}