Hallo,
ich habe ein Problem mit Java Swing.
Erstmal: Während eines Uni-Projekts kam es relativ kurzfristig dazu, dass wir ohne Erfahrungen in der Gui-Programmierung eine Gui programmieren mussten. Insofern habe ich wirklich wenig bis keine Ahnung davon, wir haben die GUI einfach in Netbeans zusammen geklickt, weil wir keine Zeit mehr hatten, uns in das Thema einzuarbeiten.
In dem Projekt geht es darum, einen Rubik's Cube von einem Lego-Mindstorms-Roboter lösen zu lassen.
Ein Teil der Gui ist ein Fenster, in dem der Würfel, der gelöst werden soll, eingegeben wird. Wir haben insgesamt 60 Labels, 6 um die Farben auszuwählen, und 54 die die einzelnen Felder des Würfels darstellen. Man wählt also erst die Farbe aus, die man verwenden will, und dann die einzelnen Felder, die so eingefärbt werden sollen.
Die Labels inkl. MouseCklickEvent werden so erzeugt:
Das für jedes einzelne Label.
Ich glaube, das kann ich auch nicht vereinfachen oder? Also eine allgemeine Methode schreiben, die dann nur für jedes einzelne Label aufgerufen wird?
Mein Hauptproblem liegt eher da, wo den Events dann die Funktionen zugewiesen werden:
Das Ganze habe ich dann 54 Mal, nur dass sich die beiden Variablen B1 und Blue1 natürlich unterscheiden. Mal kurz zur Erklärung: die Methode farbwert() wandelt die gerade aktive Farbe in ein einzelnes char um, welches dann in einer char-Variable (in diesem Fall Blue1) umwandelt.
Das Ganze muss sich doch irgendwie vereinfachen lassen oder? Nur irgendwie finde ich dazu nichts, geb wohl bei google immer die falschen Begriffe ein :-(
LG Mareike
ich habe ein Problem mit Java Swing.
Erstmal: Während eines Uni-Projekts kam es relativ kurzfristig dazu, dass wir ohne Erfahrungen in der Gui-Programmierung eine Gui programmieren mussten. Insofern habe ich wirklich wenig bis keine Ahnung davon, wir haben die GUI einfach in Netbeans zusammen geklickt, weil wir keine Zeit mehr hatten, uns in das Thema einzuarbeiten.
In dem Projekt geht es darum, einen Rubik's Cube von einem Lego-Mindstorms-Roboter lösen zu lassen.
Ein Teil der Gui ist ein Fenster, in dem der Würfel, der gelöst werden soll, eingegeben wird. Wir haben insgesamt 60 Labels, 6 um die Farben auszuwählen, und 54 die die einzelnen Felder des Würfels darstellen. Man wählt also erst die Farbe aus, die man verwenden will, und dann die einzelnen Felder, die so eingefärbt werden sollen.
Die Labels inkl. MouseCklickEvent werden so erzeugt:
Code:
B1.setBackground(new java.awt.Color(0, 0, 0));
B1.setBorder(new javax.swing.border.SoftBevelBorder(javax.swing.border.BevelBorder.RAISED));
B1.setName("B1");
B1.addMouseListener(new java.awt.event.MouseAdapter()
{
public void mouseClicked(java.awt.event.MouseEvent evt)
{
B1MouseClicked(evt);
}
});
Das für jedes einzelne Label.
Ich glaube, das kann ich auch nicht vereinfachen oder? Also eine allgemeine Methode schreiben, die dann nur für jedes einzelne Label aufgerufen wird?
Mein Hauptproblem liegt eher da, wo den Events dann die Funktionen zugewiesen werden:
Code:
private void B1MouseClicked(java.awt.event.MouseEvent evt)
{
B1.setBackground(color);
Blue1=farbwert();
}
Das Ganze habe ich dann 54 Mal, nur dass sich die beiden Variablen B1 und Blue1 natürlich unterscheiden. Mal kurz zur Erklärung: die Methode farbwert() wandelt die gerade aktive Farbe in ein einzelnes char um, welches dann in einer char-Variable (in diesem Fall Blue1) umwandelt.
Das Ganze muss sich doch irgendwie vereinfachen lassen oder? Nur irgendwie finde ich dazu nichts, geb wohl bei google immer die falschen Begriffe ein :-(
LG Mareike