# EndlosSchleife per (zB.:esc) anhalten?



## vaporizer (1. März 2004)

Hallo zusammen
Also folgendes...
Habe eine Uhr programiert..
Habe eine Endlosschleife diese die Uhr jede sekunde raufzählt...
Habe den UhrString auf der Canvas sichtbar gemacht..
nun ist folgendes problem:
        wenn ich das Programm(canvas) mit dem x schliesse,
        läuft die Schleife im Hintergrund weiter.
        muß das Programm dann per Taskmanager beenden

        Wie kann ich eine Endlosschleife per Taste (zB.:esc) beenden?
        und wie kann ich überhaupt wärend des Programmablaufes,
        Methoden per Tasten aufrufen. (ist das überhaupt möglich? )

kurz gesagt : wie binde ich meine Tastatur in mein Program ein.

ähm..und nochwas kann man 2 Methoden gleichzeitig ausführen?

Schöne Grüße von Vaporizer


----------



## Franz Degenhardt (2. März 2004)

> _Original geschrieben von vaporizer _*
> Habe eine Uhr programiert..
> Habe eine Endlosschleife diese die Uhr jede sekunde raufzählt...
> Habe den UhrString auf der Canvas sichtbar gemacht..
> ...


Hallo vaporizer!
Dafür musst du aber ein weiteren Thread gestartet haben. Wenn die Schleife innerhalb des Canvas gestartet würde, so würde sie bei einem System.exit(), aufgerufen in der windowClosing-Methode, beendet. 


> _Original geschrieben von vaporizer _*
> Wie kann ich eine Endlosschleife per Taste (zB.:esc) beenden?
> *


indem du die Schleife folgendermassen aufbaust:
boolean running = true;
while (running){
doSomething();
}
wenn du nun die Variable running auf false setzt, läuft die Schleife aus.


> _Original geschrieben von vaporizer _*
> und wie kann ich überhaupt wärend des Programmablaufes,
> Methoden per Tasten aufrufen. (ist das überhaupt möglich? )
> kurz gesagt : wie binde ich meine Tastatur in mein Program ein.
> *


durch einen Eventlistener 'KeyListener' den du an deine Komponente bindest. (die Api ist dein Freund 
Java-api: http://java.sun.com/j2se/1.4.2/docs/api/
KeyListener Tutorial aus der api:  http://java.sun.com/docs/books/tutorial/post1.0/ui/keylistener.html)


> _Original geschrieben von vaporizer _*
> ähm..und nochwas kann man 2 Methoden gleichzeitig ausführen?
> *


ja, indem du sie in unterschiedlichen Threads aufrufst.
HTH TrueSun


----------

