Menu Problem

Status
Nicht offen für weitere Antworten.

Nathy

Aktives Mitglied
Ich habe ein Menu erstellt
Code:
        JMenuBar menuBar = new JMenuBar();
        JMenu menu = new JMenu("Menu");
        menu.add(new JMenuItem("Beenden"));
        menu.addActionListener(this);
        JMenu hilfe = new JMenu("Hilfe");
        hilfe.add(new JMenuItem("Über Robotersteuerung"));        
        hilfe.addActionListener(this);
        menuBar.add(menu);
        menuBar.add(hilfe);
        frame.setJMenuBar(menuBar);
Dann gibts noch eine Methode actionPerformed
Code:
public void actionPerformed(ActionEvent e)
    {
        System.out.println("in actionPerformed");
        if(e.getActionCommand()=="Beenden"){
            System.out.println("Beenden");
            System.exit(0);
        }
        
    }
Wenn ich auf einMenueitrag klicke, wrid die actionPerformed Methode nicht aufgerufen. Beim Klick auf einen Button aber schon. Wo liegt das Problem?

Gruss und danke
 
Du musst die MenuItems richtig unterscheiden. Alle rufen deine actionPerformed()-Methode auf, es dürfte also immer das Gleiche passieren.

Und das ist verkehrt:
Code:
if(e.getActionCommand()=="Beenden"){

Richtig wäre:
Code:
if(e.getActionCommand().equals("Beenden")){
weil man Strings mit der equals()-Methode vergleicht. (Siehe auch FAQ)
 
Status
Nicht offen für weitere Antworten.

Neue Themen


Zurück
Oben