MenuBar

swany

Mitglied
Hey Leute,

ich habe mich daran versucht eine Menüleiste zu programmieren. Bisher lief es auch ganz gut. Mein Problem in moment ist, dass das der Dialog "Spiel öffnen" schon öffnet, beovor ich überhaupt die Option gewählt habe. Ich weiß, dass es mit dem setVisible (true) zu tun hat. Wenn ich dieses auf (false) setzten würde, dann öffnet es sich nicht vor dem Click. Problem hierbei ist allerdings, dass es sich dann auch nicht mehr mit dem Click öffnet. Es passiert also rein gar nichts. Wie bekomme ich es hin, dass sich der Dialog erst öffnet, wenn ich auf "Spiel öffnen" klicke

Code:
MenuBar mbar = new MenuBar();
 Menu fileMenu = new Menu ("Datei");

 MenuItem fileNewMenu = new MenuItem("Neues Spiel");
 fileMenu.add(fileNewMenu);
 MenuItem fileOpenMenu = new MenuItem("Spiel öffnen");
 fileMenu.add(fileOpenMenu);
 FileDialog ofdlg = new FileDialog(this, "Spiel öffnen",FileDialog.LOAD);
 ofdlg.setVisible(true);
 
 MenuItem fileSaveMenu = new MenuItem("Spiel speichern");
 fileMenu.add(fileSaveMenu);
 FileDialog fdlg = new FileDialog(this, "Spiel speichern",FileDialog.SAVE);
 fdlg.setVisible(true);
 MenuItem appQuit = new MenuItem("Schließen");
 fileMenu.add(appQuit);
 mbar.add(fileMenu);
 setMenuBar(mbar);
 }
 
Eine Idee von mir war es noch

fileOpenMenu.setActionCommand("Spiel öffnen");
fileopenMenu.addActionListener(this);
fileMenu.add (fileOpenMenu);

einzubauen, aber er untersreicht mir dann immer den ActionCommand und Actionlistener.....
 
Hab den Fehler mit dem Actionlistener und Command behoben, aber es öffnet sich dennoch nicht, wenn ich auf "spiel öffnen" klicke..... Kann mir jmd helfen? Wäre mega nett!!
 
Guten Morgen,
wie sieht denn dein Code des ActionListeners aus? Denn nach dem Auswerten des ActionCommand rufst du dann dein ofdlg.setVisible(true); auf.

Poste mal den Code der ganzen Klasse, weil es sieht ja so aus, als sei dein ActionListener die gleiche Klasse.


Gruß
Gerrit
 

Neue Beiträge

Zurück