Veröffentlicht 24. Juni 200520 j also ich mach gerade GUI für mein spiel..... das problem ist ich will ein Untermenu in einen Menu einbauen!! package GUI; import javax.swing.*; public class menu extends JMenuBar { private JMenuItem miBACK; public menu (){ JMenu m; m = new JMenu ("File"); m.add(new JMenuItem("New Game")); m.add(new JMenuItem("Load Game")); m.add(new JMenuItem("Save Game")); m.addSeparator(); m.add(new JMenuItem("Quit")); add(m); m = new JMenu ("Options"); m.add(new JMenu("Properties")); //ein untermenu wird //erzeugt!! add(m); } public void enableBack(boolean back){ if (back) { miBACK.setEnabled(true); } else { miBACK.setEnabled(false); } } } also hier bekomme ich einen untermenu durch m.add(new JMenu(....)); aber wie kann ich da was reintun?? http://wap.tutorials.de/t-136899.html hier ein beispiel dafür aber inkompatibel zu meinen
25. Juni 200520 j JMenu m; m = new JMenu ("File"); m.add(new JMenuItem("New Game")); m.add(new JMenuItem("Load Game")); m.add(new JMenuItem("Save Game")); m.addSeparator(); m.add(new JMenuItem("Quit")); add(m); m = new JMenu ("Options"); m.add(new JMenu("Properties")); //ein untermenu wird //erzeugt!! add(m); Ich hab das Gefühl, dass hier der Hund begraben liegt. Du überschreibst mit das Menü mit dem neuen von Options. ich würde es mal so probieren: JMenu m = new JMenu ("File"); m.add(new JMenuItem("New Game")); m.add(new JMenuItem("Load Game")); m.add(new JMenuItem("Save Game")); m.addSeparator(); m.add(new JMenuItem("Quit")); JMenu options = new JMenu ("Options"); options.add(new JMenu("Properties")); //ein untermenu wird erzeugt!! this.add(m); this.add(options);
25. Juni 200520 j alles schön und gut aber is ist genausoviel wie JMenu m; JMenu options; und dann schreibt man m = new JMenu ("Files"); m.add(new JMenuItem ("blabla")); add(m); // und dann options = new JMenu ("Properties"); otptions.add(new JMenu("Untermenu")); add(options); //naja aber dann wie soll es denn gehen? //also ich hab einen Untermenu.... aber wie kann ich da was reintun? //wenn ich mache m.add(new JMenu("untermenu").add(new JMenuItem("UntermenuItem))); // dann hab ich einen untermenu der immer noch leer ist und in den menu //diesen fall "blabla" , weil "m" genomen wurde hab ich einenn MenuItem //untermenu ich brauche den programmcode der mir zeigt wie ich die JMenuItem in den Untermenu reintun kann!!
26. Juni 200520 j Ich hab ne Funktion für jeden Menupunkt. Hier ist einer davon... private JMenu initMenuAusruestung() { JMenu ausruestung = new JMenu("Ausruestung"); ausruestung.setMnemonic('A'); //Liste JMenuItem item1; item1 = new JMenuItem("Liste", 'l'); item1.addActionListener(this); //Neu JMenuItem item2; item2 = new JMenuItem("Neu", 'n'); item2.addActionListener(this); //Suche JMenuItem item3; item3 = new JMenuItem("Suche", 's'); item3.addActionListener(this); ausruestung.add(item1); ausruestung.add(item2); ausruestung.add(item3); return ausruestung; } [/PHP] ***greetz Empu
26. Juni 200520 j ich brauche den programmcode der mir zeigt wie ich die JMenuItem in den Untermenu reintun kann!! Ich hab das ausprobiert, und das tut genau das was es soll, es packt ein JMenuItem in ein JMenu. JMenu m1 = new JMenu("Test1"); m1.add(new JMenuItem("Bla1")); Das wiederum packt ein vorhandenes JMenu in ein anderes, so dass man das darunter aufrufen kann: public JMenu drawMenuInMenu() { JMenu m1 = new JMenu("Test1"); m1.add(new JMenuItem("Bla1")); JMenu m2 = new JMenu("Test2"); m2.add(new JMenuItem("Bla2")); JMenu m3 = new JMenu("Test3"); m3.add(new JMenuItem("Bla3")); m1.add(m2); m1.add(m3); return m1; } Ansonsten, beschreib bitte dein Problem etwas genauer und poste deinen Code.
Archiv
Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.