Hallo,
Ich habe die AUfgabe bekommen ein Gui zu programmieren, wo sich oben ein farbiges Panel befindet und da drunter 3 Scrollbars für RGB-Werte, wo eine Scrollbar für rot, eine für grün und eine für blau steht. Die Initialisierungsfarbe des Panels soll schwarz sein.
Nun soll es möglich sein die Farbe des Panels zu ändern, indem man die Scrollbars bewegt.
Synaktisch ist auch alles richtig aufgebaut, das GUI steht, und eine Klasse für den AdjustmentListener ist auch vorhanden und Eclipse meckert auch nichts an. Allerdings komm ich irgendwie nicht drauf, wie ich es nun so regeln kann, dass sich die Farbe ändert, bzw die richtige Scrollbar die richtige Farbe beeinflusst. Könnt ihr mir da vielleicht auf die Sprünge helfen?
Hier mal mein bisheriger Code:
Danke in voraus!
Ich habe die AUfgabe bekommen ein Gui zu programmieren, wo sich oben ein farbiges Panel befindet und da drunter 3 Scrollbars für RGB-Werte, wo eine Scrollbar für rot, eine für grün und eine für blau steht. Die Initialisierungsfarbe des Panels soll schwarz sein.
Nun soll es möglich sein die Farbe des Panels zu ändern, indem man die Scrollbars bewegt.
Synaktisch ist auch alles richtig aufgebaut, das GUI steht, und eine Klasse für den AdjustmentListener ist auch vorhanden und Eclipse meckert auch nichts an. Allerdings komm ich irgendwie nicht drauf, wie ich es nun so regeln kann, dass sich die Farbe ändert, bzw die richtige Scrollbar die richtige Farbe beeinflusst. Könnt ihr mir da vielleicht auf die Sprünge helfen?
Hier mal mein bisheriger Code:
Code:
import java.awt.*;
import java.awt.event.*;
public class Aufgabe3 {
/**
* @param args
*/
public static void main(String[] args) {
new GUI();
}
}
class GUI {
GUI() {
Frame fenster = new Frame("Scrollbars");
Panel panel = new Panel();
//Grundlegender Fensteraufbau
fenster.setSize(800, 600);
GridLayout fensterLayout = new GridLayout(0,1);
fenster.setLayout(fensterLayout);
//Hinzufügen des Labels
fenster.add(panel);
//Label für die Scrollbars
Panel p1 = new Panel();
GridLayout p1Layout = new GridLayout(0,3);
p1.setLayout(p1Layout);
fenster.add(p1);
//Scrollbars
Scrollbar bar1 = new Scrollbar();
bar1.setOrientation(0);
bar1.setMinimum(0);
bar1.setMaximum(255);
bar1.setBackground(Color.red);
bar1.setValue(0);
Scrollbar bar2 = new Scrollbar();
bar2.setOrientation(0);
bar2.setMinimum(0);
bar2.setMaximum(255);
bar2.setBackground(Color.green);
bar2.setValue(0);
Scrollbar bar3 = new Scrollbar();
bar3.setOrientation(0);
bar3.setMinimum(0);
bar3.setMaximum(255);
bar3.setBackground(Color.blue);
bar3.setValue(0);
p1.add(bar1);
p1.add(bar2);
p1.add(bar3);
int r = bar1.getValue(); // rot
int g = bar2.getValue(); // grün
int b = bar3.getValue(); // blau
Color farbe = new Color(r, g, b);
panel.setBackground(farbe);
fenster.setVisible(true);
}
}
class MyListener implements AdjustmentListener {
MyListener() {
}
public void adjustmentValueChanged(AdjustmentEvent evt) {
}
}
Danke in voraus!