Hallo zusammen,
kurz zu mir: Ich bin neu hier im Forum, aber schon länger Besucher des Forums, um mir Hilfestellungen oder Fragen, die mir beim Progammieren aufkamen, zu suchen oder natürlich meinstens zu finden.
Letztens bin auf folgende Aufgabe gestoßen, die mir doch einige Schwierigkeiten bereitet:
Erstellen Sie ein Programm, das ein Fenster mit einem Button anzeigt (Stopped). Wird auf den Button geklickt, soll der Text in "Running" geändert werden. Außerdem soll die Textfarbe alle 500ms zwischen Schwarz und Rot wechseln. Bei einem weiteren Klick wird wieder der Text "Stopped" ohne Farbwechsel in schwarzer Farbe angezeigt.
Folgendes habe ich bereits programmiert, jedoch weiß ich leider nicht wie das mit dem Farbwechsel alle 500ms funktionieren soll.
Vielleicht könnt ihr mir da ein wenig weiterhelfen.
kurz zu mir: Ich bin neu hier im Forum, aber schon länger Besucher des Forums, um mir Hilfestellungen oder Fragen, die mir beim Progammieren aufkamen, zu suchen oder natürlich meinstens zu finden.
Letztens bin auf folgende Aufgabe gestoßen, die mir doch einige Schwierigkeiten bereitet:
Erstellen Sie ein Programm, das ein Fenster mit einem Button anzeigt (Stopped). Wird auf den Button geklickt, soll der Text in "Running" geändert werden. Außerdem soll die Textfarbe alle 500ms zwischen Schwarz und Rot wechseln. Bei einem weiteren Klick wird wieder der Text "Stopped" ohne Farbwechsel in schwarzer Farbe angezeigt.
Folgendes habe ich bereits programmiert, jedoch weiß ich leider nicht wie das mit dem Farbwechsel alle 500ms funktionieren soll.
Vielleicht könnt ihr mir da ein wenig weiterhelfen.
Java:
import java.awt.Dimension;
import java.awt.Font;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
public class StoppRunning {
JButton a;
public static void main(String[] aa) {
StoppRunning sr = new StoppRunning();
}
public StoppRunning() {
JFrame jf = new JFrame();
a = new JButton("Stopped");
a.setPreferredSize(new Dimension(200, 50));
Font schrift = (a.getFont().deriveFont(Font.BOLD, 20));
a.setFont(schrift);
a.addActionListener(new MyAction());
jf.add(a);
jf.setSize(230, 90);
jf.setVisible(true);
jf.setLocationRelativeTo(null);
jf.setResizable(false);
jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
public class MyAction implements ActionListener {
public void actionPerformed(ActionEvent e) {
String text = (String) e.getActionCommand();
if (text.equals("Stopped")) {
a.setText("Running...");
// a.setForeground(Color.RED);
} else {
a.setText("Stopped");
// a.setForeground(Color.BLACK);
}
}
}
}