# blinkender Text??



## Smurph (16. Apr 2004)

hallo,

ich mache für die schule gerade in spiel a la "wer wird millionär", allerdings mit RadioButtons. Wenn eine Antwort falsch war, möchte ich den Text (des RadioButtons) dann rot blinken lassen. Weiß jemand, wie man das Blinken hinkriegt?

Vielen Dank schon mal für eure Hilfe,  

Smurph


----------



## citizen_erased (16. Apr 2004)

pfui! blinkende texte :bae:


----------



## Anubis (16. Apr 2004)

Du kannst einen Timer erstellen, der den Text löscht, wieder schriebt, löscht, wieder schriebt,...

Dafür musst du aber noch heruasfinden, wie ein Timer funktioniert:

Du braucht einen Timer und ein Timertask:

```
import java.util.*;

class MyTimerTaks extends TimerTask {
  public void run() {
    System.out.println("Hallo");
  }
}

class main {
  public static void main(String[] args) {
    Timer t = new Timer();
    MytimerTask mtt = new MyTimerTask();
    t.schedule(mtt, 0, 500);
  }
}
```

Bei der ausführung der main-Methode wird jede halbe sekunde der Text Hallo ausgegeben.


----------



## Illuvatar (16. Apr 2004)

Was mir einfällt ist ein neuer Thread, der eine Zeit lang alle paar Sekunden die Farbe des Radiobuttons ändert.


```
new Thread(){
  public void run()
  {
    for (int i = 0; i < 20; i++)
    {
      wrongButton.setForeground (Color.RED);
      repaint();
      try{Thread.sleep(200);}catch(InterruptedException e){}
      wrongButton.setForeground (Color.BLACK);
      repaint();
      try{Thread.sleep(200);}catch(InterruptedException e){}
    }
  }
}.start();
```

Edit: Anubis' Lösung gefällt mir besser als meine


----------



## Smurph (16. Apr 2004)

ah, vielen Dank schonmal, probier ich dann gleich mal aus!


----------



## Guest (16. Apr 2004)

@Anubis: vielen Dank für deine Hilfe, hat geklappt

@citizen_erased: sieht total gut aus  :lol:


----------



## zubi (3. Mai 2004)

hallo,

ich will gleichen (blinkenden) Effekt für ein Icon in einem JFrame (Chat) erreichen. Kann ich hier mit der Lösung von Anubis (mit Timer) arbeiten, oder muss ich einen neuen Thread generieren (es soll weiterhin mit dem JFrame interagiert werden können, während dem Blinken)?

danke & gruss
zubi


----------



## Illuvatar (3. Mai 2004)

Du kannst Anubis' Lösung verwenden. (In der run-Methode von myTimerTask Farbe ändern)


----------



## zubi (3. Mai 2004)

ok, ich habe mit dem swing Timer gearbeitet; das Icon blinkt nun wie es soll!  :wink: Nur: eigentlich wäre es schön, wenn es nach einer gewissen Anzahl wieder aufhören würde.
Wie krieg ich den Timer dazu, nur z.B. 5 mal die Action durchzuführen?

gruss,
zubi

edit: wenn ich den Timer mit timer.stop(); zu beenden versuche, blinkt das Icon fröhlich weiter...  ???:L


----------

