hallo ich habe ein Programm schreiben müssen um die Hintergrundfarbe eines Fensters zu ändern, da hab ich mich mit viel Mühe und noch mehr Hilfe durchgeboxt mit folgendem code
jetzt möchte ich dieses Programm so ändern das nicht die Farbe geändert wird sondern dass durch den set Button gewürfelt werden kann. anstelle des Schrifuges "switch" soll eben eine zufalls zahl des Würfels stehen.
sitze da schon länger dran und bekomm leider nichts hin -.-
hier meine ersten änderungsversuche
Java:
import java.awt.*; // Color
import javax.swing.*; //JFrame, JPanel, JLabel
import java.awt.event.*; // Listener
/**
* Erzeugen eines Fensters mit Text und Button.
*/
public class Farbe
extends JFrame
implements ActionListener
{
/**
* Konstante, Aendern der Hintergrundsfarbe.
*/
static public String ACTION_SET = "aendern";
/**
* Konstante, Beenden des Programms.
*/
static public String ACTION_QUIT = "Ende";
/**
* Content Pane, Darstellungsbereich des Fensters.
*/
private JPanel contentPane;
/**
* Konstruktor, baut das Fenster auf.
* @param titel Titelleistentext
* @param farbe Fensterhintergrundsfarbe
*/
public Farbe( String titel, Color farbe)
{
// Titelleiste
super( titel);
// Darstellungsbereich
contentPane = new JPanel();
contentPane.setBackground( farbe);
// Button Set mit Listener
JButton btSet = new JButton( ACTION_SET);
contentPane.add( btSet);
btSet.addActionListener( this);
// Label Hallo
JLabel lbHallo = new JLabel( "Switch!");
contentPane.add( lbHallo);
// Button Quit mit Listener
JButton btQuit = new JButton( ACTION_QUIT);
contentPane.add( btQuit);
btQuit.addActionListener( this);
// Fenster
// Fensterinhalt uebernehmen
setContentPane( contentPane);
pack(); // Anpassen der Fenstergroesse
// Beenden durch x-Button
setDefaultCloseOperation( JFrame.EXIT_ON_CLOSE);
setVisible( true); // Sichtbarmachen
}
/**
* Ereignisverarbeitung, ActionListener,
* Betaetigen eines Button.
*/
public void actionPerformed( ActionEvent ae)
{
String command = ae.getActionCommand();
// Farbwechsel durch Button Set
if( command.equals( ACTION_SET))
{
float dummy1 = ( float)Math.random();
float dummy2 = ( float)Math.random();
float dummy3 = ( float)Math.random();
Color farbe = new Color( dummy1, dummy2, dummy3);
contentPane.setBackground( farbe);
}
// Programmabbruch durch Button Quit
if( command.equals( ACTION_QUIT))
{
System.exit( 0);
}
}
/**
* Aufruf des Programms.
*/
public static void main(String args[])
{
Farbe fa =
new Farbe( "Farbwechsel", Color.yellow);
}
}
sitze da schon länger dran und bekomm leider nichts hin -.-
hier meine ersten änderungsversuche
Java:
import java.awt.*; // Color
import javax.swing.*; //JFrame, JPanel, JLabel
import java.awt.event.*; // Listener
/**
* Erzeugen eines Fensters mit Text und Button.
*/
public class GUIWuerfel
extends JFrame
implements ActionListener
{
/**
* Konstante, zur Würfelausführung.
*/
static public String ACTION_SET = "Wurf";
/**
* Konstante, Beenden des Programms.
*/
static public String ACTION_QUIT = "Ende";
/**
* Content Pane, Darstellungsbereich des Fensters.
*/
private JPanel contentPane;
/**
* Konstruktor, baut das Fenster auf.
* @param titel Titelleistentext
* @param farbe Fensterhintergrundsfarbe
* @param zahl gewürfelte Zahl
*/
public GUIWuerfel( String titel, Color farbe, Integer zahl)
{
// Titelleiste
super( titel);
/*
// Darstellungsbereich
contentPane = new JPanel();
contentPane.setBackground( farbe);
// Button Wurf mit Listener
JButton btWurf = new JButton( ACTION_SET);
contentPane.add( btWurf);
btWurf.addActionListener( this);
// Label Mit Würfelanzeige!!!!!!!!!!!!!!!!!
JLabel lbWurf = new Jlabel (lbWurf.setText(" " + zahl));
//JLabel lbWuerfelzahl = new JLabel( "Würfel");
//contentPane.add( lbWuerfelzahl;
// Button Quit mit Listener
JButton btQuit = new JButton( ACTION_QUIT);
contentPane.add( btQuit);
btQuit.addActionListener( this);
*/
// Fenster
// Fensterinhalt uebernehmen
setContentPane( contentPane);
pack(); // Anpassen der Fenstergroesse
// Beenden durch x-Button
setDefaultCloseOperation( JFrame.EXIT_ON_CLOSE);
setVisible( true); // Sichtbarmachen
}
/**
* Ereignisverarbeitung, ActionListener,
* Betaetigen eines Button.
*/
public void actionPerformed( ActionEvent ae)
{
String command = ae.getActionCommand();
/*
// Farbwechsel durch Button Set
if( command.equals( ACTION_SET))
{
float dummy1 = ( float)Math.random();
float dummy2 = ( float)Math.random();
float dummy3 = ( float)Math.random();
Color farbe = new Color( dummy1, dummy2, dummy3);
contentPane.setBackground( farbe);
}
*/
// Programmabbruch durch Button Quit
if( command.equals( ACTION_QUIT))
{
System.exit( 0);
}
}
/* ------------------------------------------------- */
/**
* Aufruf des Programms.
*/
public static void main(String args[])
{
GUIWuerfel roll =
new GUIWuerfel( "Würfel", Color.red);
}
}