当我尝试将表数据复制到数组时,出现了这个运行时异常。我用
DefaultTableModel model = new DefaultTableModel(dataValues, columnNames);
jtable.setModel(model);
我使用setModel
表格的方法来设置模型。问题仍然存在。请提供我的示例代码。
存储在表中的默认值类型是对象类型。尝试先将其转换为“字符串”类型(或根据需要),然后将其存储在数组中。
这是您要求的示例代码。这可以正常工作:
import javax.swing.*;
import javax.swing.table.DefaultTableModel;
import java.awt.*;
public class TableDemo {
public static void main(String[] args) {
javax.swing.SwingUtilities.invokeLater(new Runnable() {
public void run() {
String columnNames[] = {" BIN", " NAME", " SECURITY CODE"};
String dataValues[][] = new String[15][3];
for (int i = 0; i < 15; i++) {
for (int j = 0; j < 3; j++) {
dataValues[i][j] = Integer.toString(i) + "," + Integer.toString(j);
}
}
JTable table = new JTable();
DefaultTableModel model = new DefaultTableModel(dataValues, columnNames);
table.setModel(model);
JFrame frame = new JFrame("TableDemo");
frame.setSize(new Dimension(500, 500));
frame.getContentPane().add(table);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
}
});
}
}
如果这没有帮助,请发布您的 dataValues 和 columnNames 数组的内容。