Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/firebase/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用鼠标事件按下swing按钮?_Swing_Event Handling - Fatal编程技术网

如何使用鼠标事件按下swing按钮?

如何使用鼠标事件按下swing按钮?,swing,event-handling,Swing,Event Handling,我有一个JButton(或者任何组件,真的),我想欺骗它,让它认为它被点击了,因此触发了它的action-performed事件。我不想直接调用已执行的操作或doClick,因为我正在尝试创建一个超越按钮的解决方案,而且我只能发布事件 我本以为将一个鼠标按下的事件发布到系统事件队列中就可以了,但没有(在适当的位置,单击计数等) 然后我想一个鼠标进入,然后移动鼠标,按下鼠标,释放鼠标,然后点击鼠标,但是没有 所有这些都不会导致JButton启动其操作,就像我实际单击它时执行的操作一样 是否有人通过

我有一个JButton(或者任何组件,真的),我想欺骗它,让它认为它被点击了,因此触发了它的action-performed事件。我不想直接调用已执行的操作或doClick,因为我正在尝试创建一个超越按钮的解决方案,而且我只能发布事件

我本以为将一个鼠标按下的事件发布到系统事件队列中就可以了,但没有(在适当的位置,单击计数等)

然后我想一个鼠标进入,然后移动鼠标,按下鼠标,释放鼠标,然后点击鼠标,但是没有

所有这些都不会导致JButton启动其操作,就像我实际单击它时执行的操作一样

是否有人通过鼠标事件驱动JButton,使其吐出动作执行事件?移动带有鼠标事件的JSlider?展开树节点


谢谢您的帮助。

您尝试过fireActionPerformed方法吗?我现在记不清是否所有组件都有它,但如果我记得正确,所有按钮和菜单项都应该有它。只是一个想法

fireActionPerformed
受保护,因此您需要在子类中公开它。您必须这样做,因为只有同一个包或子类中的类才能使用它。如何实施其余部分完全取决于您。这不是一件普通的事情,我当然从来没有做过,我只是假设它会根据javadocs所说的工作