如果我已經定義JMenu
和JMenuBar
這樣的:MenuListener實現,如何檢測哪個JMenu被點擊?
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) {}
現在它工作正常。但問題是如果我有更多的菜單,我怎麼區分這兩個。 就像在菜單監聽器中,我怎麼知道點擊來自menu1或另一個菜單2?
我的意思是,如果我有另一個菜單和我添加菜單監聽此菜單以及:
jMenu2.addMenuListener(this);
然後我無法區分哪個菜單點擊來自何處。我怎樣才能做到這一點?
使用MenuListeners是不尋常的 - 這引發了一個常見的問題:爲什麼你認爲你需要它? – kleopatra 2011-12-21 13:04:37