Zum Inhalt springen

Empfohlene Beiträge

Geschrieben

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

Geschrieben


		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);

Geschrieben

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!!

Geschrieben

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

Geschrieben

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.

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...