我正在尝试向JTable
具有以下行为的列添加一列(类似于 Windows 资源管理器和类似的外壳):
- 像往常一样,可以单击一次单元格以将其选中。
- 可以双击单元格以执行单独的操作(启动外部程序。)
- 仍然可以编辑单元格值(字符串),方法是再次单击(暂停后)或F2在单元格突出显示时按下。
双击不能触发单元格的编辑,但如果可能的话,我想保留任何其他默认的编辑触发器。
我尝试将 a 添加MouseListener
到表中并消耗所有MouseEvent
s,但这不起作用 - 如果我从那时返回true
,isCellEditable()
我的侦听器将永远不会收到任何点击事件,但如果我返回false
则F2不再工作。
这可以仅使用事件侦听器来实现吗?如果可以避免的话,我宁愿不要弄乱 PLAF 的功能。