Fettkopp
2006-12-30, 23:22:47
Mahlzeit hab da ein kleines Problem mit meinem Programm. Mein Programmierstil ist vielleicht nicht grade der beste. Aber nun hakt mein Programm an einer Stelle.
Und zwar soll, je nachdem ob q,w,e,r gedrückt wird. Das geöffnete Fenster in einer anderen Farbe erscheinen. Nur wird die Variable "z" nicht an die Paintmethode übergeben. Wie gebe ich die Variable an diese weiter??
import java.awt.*;
import java.io.*;
public class Fenster extends Frame
{
private int z;
public static char readChar() {
BufferedReader din = new BufferedReader(
new InputStreamReader(System.in));
char x;
try {
x = din.readLine().charAt(0);
} catch (Exception e) {
x = '\n';
}
return x;
}
public Fenster(int z) // hier kommt die Variable an
{
setSize(700,500);
setVisible(true);
}
public void paint(Graphics g)
{
g.setColor(new Color(z,0,0)); // Hier soll die "z" Variable ankommen
g.fillRect(0,0,100,100);
}
public static void main(String[] args)
{
System.out.println("4 Farbiges Fensterprogramm");
char frage = readChar();
if (frage == 'q')
{
Frame w = new Fenster(255); // Hier wird ein Wert übergeben
}
else if (frage == 'w')
{
Frame w = new Fenster(0); // oder hier
}
else if (frage == 'e')
{
Frame w = new Fenster(50); // oder hier
}
else if (frage == 'r')
{
Frame w = new Fenster(100); // oder hier
}
}
}
Und zwar soll, je nachdem ob q,w,e,r gedrückt wird. Das geöffnete Fenster in einer anderen Farbe erscheinen. Nur wird die Variable "z" nicht an die Paintmethode übergeben. Wie gebe ich die Variable an diese weiter??
import java.awt.*;
import java.io.*;
public class Fenster extends Frame
{
private int z;
public static char readChar() {
BufferedReader din = new BufferedReader(
new InputStreamReader(System.in));
char x;
try {
x = din.readLine().charAt(0);
} catch (Exception e) {
x = '\n';
}
return x;
}
public Fenster(int z) // hier kommt die Variable an
{
setSize(700,500);
setVisible(true);
}
public void paint(Graphics g)
{
g.setColor(new Color(z,0,0)); // Hier soll die "z" Variable ankommen
g.fillRect(0,0,100,100);
}
public static void main(String[] args)
{
System.out.println("4 Farbiges Fensterprogramm");
char frage = readChar();
if (frage == 'q')
{
Frame w = new Fenster(255); // Hier wird ein Wert übergeben
}
else if (frage == 'w')
{
Frame w = new Fenster(0); // oder hier
}
else if (frage == 'e')
{
Frame w = new Fenster(50); // oder hier
}
else if (frage == 'r')
{
Frame w = new Fenster(100); // oder hier
}
}
}