如何防止选择另一个JTable行?

时间:2018-07-07 10:12:21

标签: java swing jtable

我有一个JFrame窗口,看起来像这样:

enter image description here

基本上,无论从JTable中选择了什么行,详细信息都将显示在右侧窗格(JRootPane)中。

根窗格包含用户可以执行的一些操作,例如根据其具有的与选定项目有关的数据生成和保存图像。

执行此操作时,Item Details上将显示一个带有加载微调器和模糊背景的玻璃窗格。

但是,当前,用户仍然可以在发生这种情况时选择其他行。

是否有一种方法(除了在桌子上显示玻璃窗格之外)使选定的行保持选中状态,同时还防止另一行被选中?也许有一些事件监听器?

我尝试使用MouseAdapter方法创建自定义mouseClicked,但是什么也不做,但这没用。并将setRowSelectionAllowed设置为FALSE将取消选择当前选定的行。

1 个答案:

答案 0 :(得分:0)

首先,您丢弃的解决方案(使用GlassPane覆盖JTable)似乎是一个更好的解决方案。

也就是说,您可以覆盖Component#processEvent并有条件地不调用super来忽略表上的所有事件。