Java jTable索引是错误的
当我在jtable中选择行时,它总是返回-1作为表行索引 这是我将数据填充到jtable的方式:Java jTable索引是错误的,java,swing,jtable,Java,Swing,Jtable,当我在jtable中选择行时,它总是返回-1作为表行索引 这是我将数据填充到jtable的方式: private void addResultToRecTable(DefaultTableModel dtm, ArrayList<RecipeModule> al) { if (al != null) { int rowCount = dtm.getRowCount(); for (int i = 0; i < rowCount; i++
private void addResultToRecTable(DefaultTableModel dtm, ArrayList<RecipeModule> al) {
if (al != null) {
int rowCount = dtm.getRowCount();
for (int i = 0; i < rowCount; i++) {
dtm.removeRow(0);
}
for (int i = 0; i < al.size(); i++) {
String[] recArray = {al.get(i).getRecID(), al.get(i).getRecName(), al.get(i).getRecCategory(), al.get(i).getRecQty(), al.get(i).getRecUnit()};
dtm.addRow(recArray);
}
}
在我把数据填到表中之后。我在表中选择了一行,并打印出选定的行索引。然后我犯了这个错误
private void tableRecSearchKeyReleased(java.awt.event.KeyEvent evt) {
try{
int selectedRow = tableRecIngredients.getSelectedRow();
System.out.println(selectedRow);
}
但我得到了这个错误:
java.lang.ArrayIndexOutOfBoundsException: -1
我不确定是什么问题。有什么建议吗
private void tableRecSearchKeyReleased(java.awt.event.KeyEvent evt)
我不知道那件事是什么。可能行选择尚未完成
如果您想知道行选择何时更改,请向表中添加ListSelectionListener
table.getSelectionModel().addListSelectionListener(...);
有关更多信息和示例,请阅读上Swing教程的部分
//int rowCount = dtm.getRowCount();
//for (int i = 0; i < rowCount; i++) {
// dtm.removeRow(0);
//}
我不知道那件事是什么。可能行选择尚未完成
如果您想知道行选择何时更改,请向表中添加ListSelectionListener
table.getSelectionModel().addListSelectionListener(...);
有关更多信息和示例,请阅读上Swing教程的部分
//int rowCount = dtm.getRowCount();
//for (int i = 0; i < rowCount; i++) {
// dtm.removeRow(0);
//}
你能用异常堆栈跟踪编辑你的问题,这样人们就可以看到异常发生的位置吗?为什么不让它从单击的内容中选择行?你能用异常堆栈跟踪编辑你的问题,这样人们就可以看到异常发生的位置吗?为什么不让它从单击的内容中选择行?