我扩展JButton类并使用ImageIcon作为我的按钮背景。我还添加了一个mouseListener,当鼠标悬停在按钮上或按下按钮时,我可以更改该按钮的图像。这一切都正常工作,但问题是,单击按钮时显示一个JOptionPane询问用户“你确定”,而选项窗格显示时,按钮MouseClicked,mouseExited或mouseReleased方法不会执行,因此它看起来像按钮是一直按住直到使用处理选项对话框。删除对话框不是一个选项。有没有办法在对话框显示之前或期间执行鼠标事件?Java按钮鼠标点击joptionpane
0
A
回答
2
我还添加了一个mouseListener,因此当鼠标悬停在按钮上或按下按钮时,我可以更改该按钮的图像。
阅读AbstractButton
API。有些方法可以让你为这些情况指定图标。例如setPressedIcon()
。
它看起来像按钮卡住,直到使用处理选项对话框。
不确定在选项窗格显示前是否更改了ButtonModel状态。无论如何,您可以尝试使用:
button.paintImmediately(...);
在显示选项窗格之前。如果ButtonModel状态已更新,则该按钮应在正常状态下重新绘制。请注意,此方法应该很少使用,因为它可能会影响绘画性能。
+0
paintImmediately必须被调出美国东部时间,[看起来像similair问题](http://stackoverflow.com/问题/ 8282488 /为什么 - 不 - 的setSelected-ON-JCheckBox的全输,效果) – mKorbel
相关问题
- 1. 鼠标点击按钮
- 2. QListView点击鼠标按钮
- 3. 低级别鼠标钩 - 鼠标按钮点击vs按住
- 4. 鼠标点击java
- 5. 模拟鼠标点击侧按钮
- 6. Java - 点击按钮后用鼠标绘制形状
- 7. 物理鼠标点击与模拟按钮点击?
- 8. xaml按钮焦点与按钮鼠标
- 9. Java Swing JOptionPane按钮选项
- 10. 禁用鼠标点击按钮单击并启用它
- 11. 给一个按钮鼠标点击焦点
- 12. 如何点击焦点按钮上的鼠标?
- 13. LibGDX更新标签,同时点击鼠标按钮
- 14. AS3 - 如何让鼠标光标点击按钮?
- 15. java swing按住两个鼠标按钮
- 16. 点击标签点击单选按钮
- 17. 模拟标签点击按钮点击
- 18. Java多个按钮点击
- 19. 当我点击按钮java
- 20. 按钮点击硒的Java
- 21. java检测点击按钮
- 22. Javascript按钮,防止鼠标双击
- 23. 在鼠标单击删除线按钮
- 24. 鼠标按钮单击不会注册
- 25. 用jQuery改变HREF,只需点击鼠标左键即可点击该按钮
- 26. 点击(鼠标按下)select元素
- 27. 鼠标点击并按住事件?
- 28. Extjs 3.4防止按Ctrl +鼠标点击
- 29. 查看鼠标按钮何时未被添加到所有组件的情况下点击鼠标按钮
- 30. Java - 使用按钮和鼠标点击创建自定义事件
当对话框出现时,'actionPerformed'方法将不会“退出”,这将允许按钮返回到正常状态。你可以把调用包装到'SwingUtilities.invokeLater'中的'JOptionPane'中,但是,这意味着你需要在不同的上下文中响应选项对话框,而不是你现在使用的那个。此外,你应该监视按钮模型的状态,而不是改变你的图标的状态... – MadProgrammer