JMenuitem - Klick - Aktion - Java

Ich habe code geschrieben, um auszuführen, klicken Sie auf Ereignis auf JMenuItem aber das wird nicht gefeuert, wenn ich am Debuggen. (Ich weiß, dass ich bin eigentlich nicht zu Fragen, diese Fragen in diesem forum aber ich bin neu hier im forum)

public class ClsMenu extends JMenuItem implements ActionListener {

  JTextArea output;
  JScrollPane scrollPane;

  public ClsMenu(String text)
  {
    super(text);
    addActionListener(this);
  }

  public JMenuBar createMenu()
  {
    JMenuBar menuBar;
    JMenu menuFood,menuDrinks,menuParty;
    JMenuItem foodItem;


    menuBar=new JMenuBar();


    menuFood=new JMenu("Food");
    foodItem=new JMenuItem("Pizza");
    menuFood.add(foodItem);
    menuBar.add(menuFood);
    return menuBar;
  }
  public void createGUIandShow()
  {
    JFrame frame = new JFrame("Restuarant");
    frame.setJMenuBar(createMenu());
  }

  public void actionPerformed(ActionEvent e) {
    //TODO Auto-generated method stub
    System.out.println("item clicked"+e.getActionCommand());
  }
}

In diesem Aufruf, ich habe ein Objekt erstellt

public class ClsMenuDisp {
  public static void main(String[] args) {
    //TODO Auto-generated method stub

    ClsMenu menu=new ClsMenu("testitem");
    menu.createGUIandShow();
  }
}
  • Swing-GUI-Objekte werden sollte, konstruiert und manipuliert wird, nur auf die " event-dispatch-thread.
  • Beachten Sie, dass alle konkreten JSomething sind gedacht für die Verwendung (vs. erweitert). Oder Umgekehrt: wenn Sie sich selbst sehen, Sie zu erweitern, es gibt eine hohe Wahrscheinlichkeit, dass Sie etwas falsch machen 😉
InformationsquelleAutor dotnetrocks | 2012-01-13
Schreibe einen Kommentar