我想在鼠标hover在JMenuItem上时执行一些操作。 我应该使用什么样的听众?

我想在鼠标hover在JMenuItem上时执行一些操作。 我应该使用什么样的听众?

使用MouseListener 。 它的方法mouseEntered()和mouseExited()对你有所帮助。

另类是

menuItem1.getModel().addChangeListener(new ChangeListener() { @Override public void stateChanged(ChangeEvent e) { ButtonModel model = (ButtonModel) e.getSource(); if (model.isRollover()) { // some stuff }// may be another states from ButtonModel } }); 

如果’some action’恰好是’显示消息’,请查看JComponent.setToolTipText(String) 。