私が定義JMenu
してJMenuBar
このようにした場合:
private JMenuBar jMenuBar;
private JMenu jMenu1;
jMenuBar = new JMenuBar();
jMenu1 = new JMenu();
jMenu1.setText("ABOUT");
//and here add a MenuListener so that i can detect when a menu is clicked:
jMenu1.addMenuListener(this);
jMenuBar.add(jMenu1);
setJMenuBar(jMenuBar);
//and here i implement the menulisteners
public void menuSelected(MenuEvent e) {
//my logic here
}
public void menuDeselected(MenuEvent e) {}
public void menuCanceled(MenuEvent e) {}
今では正常に動作します。しかし、問題は、複数のメニューがある場合、どうすれば 2 つを区別できるかということです。メニュー リスナーと同様に、メニュー 1 または別のメニュー 2 からクリックが発生したことをどのように知ることができますか?
別のメニューがあり、このメニューにもメニューリスナーを追加する場合:
jMenu2.addMenuListener(this);
次に、クリックがどのメニューからのものであるかを区別できません。どうやってやるの?