Entwickler-Ecke
Delphi Language (Object-Pascal) / CLX - Abbruch einer Rekursion bei Tastendruck
Gausi - Do 28.11.02 13:40
Titel: Abbruch einer Rekursion bei Tastendruck
Ich schreibe an einem Programm, dass eine rekursive Prozedur verwendet. Ich würde gerne per Tastendruck die Rekursion abbrechen können, wenn die Berechnung zu lange dauert.
Unter TurboPascal ging das ungefähr mit
Quelltext
1:
| if keypressed then Rekursionweitermachen:=false; |
wobei die Variable Rekursionweitermachen vor jedem Rekursiven Aufruf überprüft wird.
Mit Delphi krieg ich das irgendwie nich hin.
Udontknow - Do 28.11.02 14:12
Hi!
Du musst innerhalb deiner Rekursion den Befehl "Application.ProcessMessages" aufrufen, damit die Botschaftsbehandlung währenddessen erfolgt. Da solltest du aber dann darauf achten, daß der Benutzer die Rekursion kein zweites Mal z.B durch einen ButtonClick starten kann, während der Computer noch am arbeiten ist.
Cu, :)
Udontknow
Gausi - Do 28.11.02 14:30
Danke für die schnelle Antwort. Das ist genau das, was ich brauchte.
Jetzt muss ich nur den Button, der die Rekursion startet, zu Beginn derselben "disablen" und beim Abruch-Button Enabled auf True setzen.. Aber das ist ja kein Problem.
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!