Autor Beitrag
Biarchiv
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 688



BeitragVerfasst: Mi 23.06.04 11:05 
Hallo,

ich will das mein Programm immer die Größe von Dateien überprüft.
Der Code geht. Habe ihn mal unter Button.OnClick eingeordnet.

Nun will ich aber das das Programm bei aktivieren einer CheckBox dauernt alle
10 Sekunden prüft. Sprich: sleep(10000); und Resident arbeitet.

Aber das Programm ist nicht Ansteuerbar wenn ich es unter Form1.OnCreate oder .OnActivate gebe.

Wo muss ich den Code hingeben damit das Programm Ansteuerbar bleibt und die Schleife bei einer
bestimmten CheckBox=true immer arbeitet und sich ausschalten läßt.
iGoA
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 103

Alle Win´s
D5 Prof
BeitragVerfasst: Mi 23.06.04 11:09 
Rufe Deine Überprüfungsroutinge nicht in einer Dauerschleife auf, sondern mit einem Timer.
Timers auf Form ziehen. Millisekunden einstellen. Enabled auf true. In der Ereignisbehandlung OnTimer dann Deine Routine aufrufen.

_________________
"Diner for One" objektorientiert:
"The same method as last year, Ms. Sophie?" (was für´n Schwachsinn)
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Mi 23.06.04 11:11 
Sleep legt den aufrufenden Thread komplett lahm. Nimm entweder Suche in: Delphi-Forum, Delphi-Library DELAY oder lager das ganze in einen Thread aus, was ich persönlich besser finden würde. Polling-Aufgaben gehören nicht in den Hauptthread einer Anwendung. Ein Threading Tutorial findest du hier: tutorials.luckie-online.de