.getSelectedRow()返回-1

我在上写了一个“双击”事件JTable。我的JTable,即。myTaskTable填充有许多具有多列的行。我希望在双击的行之一时检索行索引JTable。我不确定为什么总是返回索引-1导致异常。我在俯视什么吗?可能出什么问题了?

这就是我从JTable-myTaskTable中检索所选行的索引的方式

int selRow = myTaskTable.getSelectedRow();

谢谢!

这是代码:

...

myTaskTable.addMouseListener(this);

...

public void mouseClicked(MouseEvent e)

{

if(e.getModifiers() == MouseEvent.BUTTON1_MASK)

{

if(e.getClickCount() == 2)

{

e.consume();

int selRow = myTaskTable.getSelectedRow();

System.out.println("GridReport double clicked on row="+selRow);

}

}

}

回答:

使用事件而不是表选择获取行索引:

final int selectedRowIndex = table.rowAtPoint(mouseEvent.getPoint());

// If the rows are sorted or filtered

final int modelRowIndex = table.convertRowIndexToModel(selectedRowIndex);

getSelectedRow()不适用于多个选定的行(允许多个选择),因为它将始终返回“

选定行的索引”。

以上是 .getSelectedRow()返回-1 的全部内容, 来源链接: utcz.com/qa/432314.html

回到顶部