【发布时间】:2015-02-09 17:51:57
【问题描述】:
我的 JTable 中的单元格仅在第二次单击时才可编辑。当我调试时,我注意到第二次单击鼠标释放事件没有被触发。我看到了很多关于创建 setSingleClick(1) 的问题的答案......但它不起作用。我认为,如果我能让第二个 mouseReleased 事件着火,我也许可以让它工作。有人有什么建议吗?
table.addMouseListener(new TableMouseListener()) ;
class TableMouseListener extends MouseAdapter{
public void mousePressed(MouseEvent e) {
System.out.println("mousePressed");
}
public void mouseClicked(MouseEvent e) {
System.out.println("mouseClicked");
}
public void mouseReleased(MouseEvent e) {
System.out.println("mouseReleased");
}
}
【问题讨论】:
-
TableCellEditor的点击次数参数可设置,默认为两次点击
-
MouseEvent 上的 getClickCount() 是否没有为您提供所需的信息?
-
我认为 getClickCount() 返回经典的双击。在我的情况下,我可以点击等待一段时间,只有当我再次点击时,单元格才会变为可编辑
-
可能类似于 "((DefaultCellEditor)table.getCellEditor()).setClickCountToStart(1)" 那么?
标签: java swing jtable mouselistener tablecelleditor