K
Kami
Gast
hi ihr proGramers!
folgendes problem :
bei meinem farbenspiel sind die scrollbars erst sichtbar, nachdem ich mit der maus drüber gehe oder draufklicke...das macht mich traurig. :cry:
hier mal der quelltext :
danke im vorraus!
folgendes problem :
bei meinem farbenspiel sind die scrollbars erst sichtbar, nachdem ich mit der maus drüber gehe oder draufklicke...das macht mich traurig. :cry:
hier mal der quelltext :
Code:
package informatikaufgabe;
import java.util.*;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.util.Random;
/**
*
Überschrift: </p>
*
Beschreibung: </p>
*
Copyright: Copyright (c) 2007</p>
*
Organisation: </p>
* @author unbekannt
* @version 1.0
*/
public class InformatikAufgabeFrame extends JFrame {
//deklarieren
Color zufall,red,blue,green;
int x,y,z;
public int rot;
public int gruen;
public int blau;
public void paint (Graphics g) {
// Farbenkram
Random generator = new Random();
x = (int) (generator.nextInt(255));
y = (int) (generator.nextInt(255));
z = (int) (generator.nextInt(255));
zufall = new Color(x, y, z);
g.setColor(zufall);
g.drawRect(300,200,400,400);
g.fillRect(300,200,400,400);
g.setColor(Color.white);
g.drawOval(300,200,400,400);
g.fillOval(300,200,400,400);
//repaint();
}
JPanel contentPane;
JScrollBar s1 = new JScrollBar();
JScrollBar s2 = new JScrollBar();
JScrollBar s3 = new JScrollBar();
//Den Frame konstruieren
public InformatikAufgabeFrame() {
enableEvents(AWTEvent.WINDOW_EVENT_MASK);
try {
jbInit();
}
catch(Exception e) {
e.printStackTrace();
}
}
//Initialisierung der Komponenten
private void jbInit() throws Exception {
contentPane = (JPanel) this.getContentPane();
contentPane.setLayout(null);
this.getContentPane().setBackground(SystemColor.menuText);
this.setDefaultCloseOperation(EXIT_ON_CLOSE);
this.setSize(new Dimension(800, 600));
this.setTitle("Farbenspiel");
s1.setOrientation(JScrollBar.HORIZONTAL);
s1.setPreferredSize(new Dimension(17, 48));
s1.setBounds(new Rectangle(234, 18, 289, 21));
// test scrollbar
s1.setName("rot");
s1.setMinimum(0);
s1.setMaximum(265);
s2.setName("grün");
s2.setMinimum(0);
s2.setMaximum(265);
s3.setName("blau");
s3.setMinimum(0);
s3.setMaximum(265);
s1.addAdjustmentListener(new InformatikAufgabeFrame_s1_adjustmentAdapter(this));
s2.setOrientation(JScrollBar.HORIZONTAL);
s2.setPreferredSize(new Dimension(17, 48));
s2.setBounds(new Rectangle(233, 54, 291, 21));
s2.addAdjustmentListener(new InformatikAufgabeFrame_s2_adjustmentAdapter(this));
contentPane.setBackground(Color.black);
contentPane.setEnabled(true);
contentPane.setForeground(Color.black);
contentPane.setDebugGraphicsOptions(0);
contentPane.setDoubleBuffered(false);
contentPane.setNextFocusableComponent(this);
contentPane.setPreferredSize(new Dimension(1, 1));
contentPane.setInputVerifier(null);
contentPane.setVerifyInputWhenFocusTarget(true);
s3.setOrientation(JScrollBar.HORIZONTAL);
s3.setBounds(new Rectangle(238, 93, 286, 22));
s3.addAdjustmentListener(new InformatikAufgabeFrame_s3_adjustmentAdapter(this));
contentPane.add(s1, null);
contentPane.add(s2, null);
contentPane.add(s3, null);
}
//Überschrieben, so dass eine Beendigung beim Schließen des Fensters möglich ist
protected void processWindowEvent(WindowEvent e) {
super.processWindowEvent(e);
if (e.getID() == WindowEvent.WINDOW_CLOSING) {
System.exit(0);
}
}
void s1_adjustmentValueChanged(AdjustmentEvent e) {
Graphics g = getGraphics();
Object s = e.getSource();
if(s==s1 || s==s2 || s==s3){
rot = s1.getValue(); // Farbfeld wird umgefärbt
gruen = s2.getValue();
blau = s3.getValue();
g.setColor(new Color(rot, gruen, blau));
g.drawOval(300,200,400,400);
g.fillOval(300,200,400,400);
}
}
void s2_adjustmentValueChanged(AdjustmentEvent e) {
Graphics g = getGraphics();
Object s = e.getSource();
if(s==s1 || s==s2 || s==s3){
rot = s1.getValue(); // Farbfeld wird umgefärbt
gruen = s2.getValue();
blau = s3.getValue();
g.setColor(new Color(rot, gruen, blau));
g.drawOval(300,200,400,400);
g.fillOval(300,200,400,400);
}
}
void s3_adjustmentValueChanged(AdjustmentEvent e) {
Graphics g = getGraphics();
Object s = e.getSource();
if(s==s1 || s==s2 || s==s3){
rot = s1.getValue(); // Farbfeld wird umgefärbt
gruen = s2.getValue();
blau = s3.getValue();
g.setColor(new Color(rot, gruen, blau));
g.drawOval(300,200,400,400);
g.fillOval(300,200,400,400);
}
}
}
class InformatikAufgabeFrame_s1_adjustmentAdapter implements java.awt.event.AdjustmentListener {
InformatikAufgabeFrame adaptee;
InformatikAufgabeFrame_s1_adjustmentAdapter(InformatikAufgabeFrame adaptee) {
this.adaptee = adaptee;
}
public void adjustmentValueChanged(AdjustmentEvent e) {
adaptee.s1_adjustmentValueChanged(e);
}
}
//Object s = e.getSource();
//if(s==s1 || s==s2 || s==s3){
//rot = s1.getValue(); // Farbfeld wird umgefärbt
// gruen = s2.getValue();
//blau = s3.getValue();
// farbfeld.setBackground(new Color(rot, gruen, blau));
class InformatikAufgabeFrame_s2_adjustmentAdapter implements java.awt.event.AdjustmentListener {
InformatikAufgabeFrame adaptee;
InformatikAufgabeFrame_s2_adjustmentAdapter(InformatikAufgabeFrame adaptee) {
this.adaptee = adaptee;
}
public void adjustmentValueChanged(AdjustmentEvent e) {
adaptee.s2_adjustmentValueChanged(e);
}
}
class InformatikAufgabeFrame_s3_adjustmentAdapter implements java.awt.event.AdjustmentListener {
InformatikAufgabeFrame adaptee;
InformatikAufgabeFrame_s3_adjustmentAdapter(InformatikAufgabeFrame adaptee) {
this.adaptee = adaptee;
}
public void adjustmentValueChanged(AdjustmentEvent e) {
adaptee.s3_adjustmentValueChanged(e);
}
}
danke im vorraus!