Methode soll neue Buttons erstellen

Hallo liebe Community,
Ich möchte über eine Methode neue Buttons erstellen. Sie müssen aber andere Namen haben. Das ganze ist schwierig zu erklären.
Code:
static void neuesProjekt(String projektname){
		JButton projekt = new JButton(projektname);
		projekt.setBounds(8, 50, 184, 20);
		projekt.setBackground(Color.black);
		projekt.setForeground(Color.white);
		buttons.add(projekt);
		buttons.repaint();
	}
Das ist die Methode, die aufgerufen wird. Ihr wird ein String übergeben, der der Name des Buttons ist.
buttons ist ein öffentliches JPanel. Mit einem Button funktioniert das ganze schon, aber bei einem 2. ausführen passiert nichts mehr, da 2 Buttons den selben Namen hätten und das nach meinem Wissen nicht geht. Ist es möglich den Namen ebenfalls als Variable anzugeben? Ich könnte ihn dann jeden Durchlauf um eine Zahl erhöhen.
Vielen Dank schon einmal im vorraus für die Antworten.
 
Warum wird der Code bei mir reihenweise so komisch angezeigt??
Du verwendest das falsch Tag, probier mal die Java-Tasse in der ButtonBar dieses Eingabefeldes....

Zum Problem:
Lies erstmal hier Trail: Creating a GUI With JFC/Swing (The Java™ Tutorials) wie man Pronzipiell mit Buttos umgeht. Das erfährst Du aus, dass die sach mit den gleichen Namen Unsinn ist.

Dass was bei Buttons die Aktion ausführt ist der [JAPI]ActionListener[/JAPI]. Komfortabler ist es aber, dem Construktor des Buttons eine Implementierung von [JAPI]AbstractAction[/JAPI] zu übergeben. da kann man dann neben dem Namen noch andere sinvolle Eigenschaften konfigurieren.

Und noch was: wenn die Methode Buttons erzeugen soll, muss sie diese nich auch noch in die GUI einfügen. Das sollte die Aufgabe einer anderen Methode sein.

bye
TT
 
Ok, aber warum kann ich mit der Methode nur einen Button erstellen? Warum entsteht beim zweiten Ausführen kein zweiter? Sie können eigentlich einen ActionListener haben, denn der soll nur den Namen übergeben und eine Methode ausführen. Einen listener habe ich hier noch garnicht eingebaut, da es ohne schon nicht funktioniert hat.
 
Naja,

Code:
projekt.setBounds(8, 50, 184, 20);

würde ja bedeuten, dass die Buttons immer an die gleiche Stelle gesetzt werden. Benutze am besten Layouts.
 

Neue Themen


Zurück
Oben