I need enlightenment.
how to add action actionListener event bind to the menu, and not bind to the menu ITEM here is the demo code, that works(on menuITEM)..
menuFileItem.addActionListener(
new ActionListener(){
public void actionPerformed(ActionEvent e)
{
System.out.println("It works");
}
}
);
but when i try the same , but just on the MENU itself it doesn't work!
menuFile.addActionListener(
new ActionListener(){
public void actionPerformed(ActionEvent e)
{
System.out.println("Plz work... :( ");
}
}
);
is it possible to add listener to menu? i taught listener could be added to everything.
You can add an ActionListener
to a JMenu
as this method is inherited from AbstractButton
. (JMenu Documentation)
JMenu menu = new JMenu("MyMenu");
menu.addActionListener(new ActionListener(){...});
But, it is not intended to be used this way: JMenu ignores ActionEvent. You should use MenuEvent
and MenuListener
instead.
JMenu menu = new JMenu("MyMenu");
menu.addMenuListener(new MenuListener() {
@Override
public void menuSelected(MenuEvent e) {
System.out.println("menuSelected");
}
@Override
public void menuDeselected(MenuEvent e) {
System.out.println("menuDeselected");
}
@Override
public void menuCanceled(MenuEvent e) {
System.out.println("menuCanceled");
}
});