.getSelectedRow()返回-1

问题描述

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

final int selectedRowIndex = table.rowAtPoint(mouseEvent.getPoint());
// If the rows are sorted or filtered
final int modelRowIndex = table.convertRowIndexToModel(selectedRowIndex);

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

解决方法

我在上写了一个“双击”事件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);
    }
  }
}

猜你在找的技术问答相关文章

如何检查配对的蓝牙设备是打印机还是扫描仪(Android)
是否允许实体正文进行HTTP DELETE请求?
如何将ZipInputStream转换为InputStream?
java.util.logging Java 8中的变量
PowerMockito.doReturn返回null
Java中的RESTful调用
Swing / Java:如何正确使用getText和setText字符串
特殊字符和重音字符
Android Studio中的ndk.dir错误
错误“找不到主类”