【发布时间】:2010-07-13 01:13:46
【问题描述】:
每当用户单击表格列进行排序时,我都需要存储鼠标单击事件。
我基本上是在保存 MouseEven:
public void mouseClicked(MouseEvent e_)
我将 e_ 存储在一个全局变量中,以便稍后我可以触发相同的事件并将表排序到之前的用户排序操作。
但是当我手动触发之前存储的鼠标事件时,表格没有得到排序。
Toolkit.getDefaultToolkit().getSystemEventQueue().postEvent(_mouseEvent);
所以基本上这就是我希望它的工作方式。用户单击 JTable 列进行排序。
我将创建的 MouseEvent 存储在全局变量中。重新创建 JTable 后,我需要将其设置为之前的排序操作。
这就是为什么我需要重新触发存储的 MouseEvent 但它不起作用的原因。有什么想法吗?
【问题讨论】:
-
当用户单击 TableHeader 进行排序时,您正在重新创建表格这一事实让我感到不舒服,这感觉像是代码异味/警告。