当PopupMenu中的一个JMenuItem被选中(鼠标悬停)时,我想突出显示屏幕上的一些元素。
@Override
public void mouseEntered(MouseEvent e) {
highlightOn();
}
@Override
public void mouseExited(MouseEvent e) {
highlightOff();
}
它工作正常,但如果我按Esc键弹出菜单将被关闭,没有清理高亮。我如何拦截关闭JPopupMenu来处理这个问题?
2条答案
按热度按时间amrnrhlw1#
类似下面这样的东西应该可以做到:
只要记住在使侦听器可见之前或在其构造函数中添加侦听器即可。
sqserrrh2#
你看
PopupMenuListener
更好的是
JMenuItem
(s)可以返回ButtonModel
,ButtonModel
返回isRollover()
、isArmend()
、isPressed()
等1.每个
JButtons JComponents
(JButton、JCheckBox、JRadioButton和JMenuXxx)实现的方法与ButtonModel
不同