Java 重新启动鼠标侦听器事件
每当用户单击表列进行排序时,我需要存储鼠标单击事件 我基本上是在保存鼠标。即使:Java 重新启动鼠标侦听器事件,java,swing,Java,Swing,每当用户单击表列进行排序时,我需要存储鼠标单击事件 我基本上是在保存鼠标。即使: public void mouseClicked(MouseEvent e_) 我将e_u存储在一个全局变量上,以便以后可以触发相同的事件,并将表排序到上一个用户排序操作 但是,当我手动触发上一个存储的鼠标事件时,表不会被排序 Toolkit.getDefaultToolkit().getSystemEventQueue().postEvent(_mouseEvent); 所以基本上这就是我想要的工作方式。用户
public void mouseClicked(MouseEvent e_)
我将e_u存储在一个全局变量上,以便以后可以触发相同的事件,并将表排序到上一个用户排序操作
但是,当我手动触发上一个存储的鼠标事件时,表不会被排序
Toolkit.getDefaultToolkit().getSystemEventQueue().postEvent(_mouseEvent);
所以基本上这就是我想要的工作方式。用户单击JTable列进行排序。
我将创建的MouseEvent存储在全局变量上。重新创建JTable时,我需要将其设置为上一个排序操作。这就是为什么我需要重新启动存储的MouseEvent,但它不工作。有什么想法吗?请参阅DefaultRowSorter的sort()方法。它与鼠标事件无关。您必须存储行分拣机的状态。看一看。您可以使用
getSortKeys()
和setSortKeys()
方法检索和恢复此状态。显然,您可以使用getRowSorter()
方法从表中获取RowSorter
希望有意义。当用户单击TableHeader进行排序时,您正在重新创建表,这让我感到不舒服,这感觉像是代码气味/警告。谢谢,这是有意义的。我试试看。