Entwickler-Ecke

Sonstiges (Delphi) - Wie 'Vorgang abbrechen' wenn Programm ausgelastet?


RichMan - Do 30.01.03 17:02
Titel: Wie 'Vorgang abbrechen' wenn Programm ausgelastet?
Hi Leute!

Ich hab eine Schleife drin, die u.U. ziemlich lange aktiv ist. Nun möchte ich dem Benutzer die Möglichkeit geben, den Vorgang abzubrechen (d.h. die Schleife vorzeitig zu verlassen). Ich hab 'ne Form drin, die halt den Status angibt (mit 'ner Progressbar) und auf der sich ein "Abbrechen"-TButton befindet. Hab schon eine Update-Methode drin, um die Progressbar zu aktualisieren, aber man kann nicht auf den den Button klicken, weil das Programm halt durch die Schleife ausgelastet ist... Wie kann ich es ermöglichen, dass man trotzdem auf den Button klicken, und damit die Schleife verlassen kann?

Danke schonmal.

Bye,
RichMan


Tino - Do 30.01.03 17:26

In der Schleife kannst Du folgende Anweisung einbauen:

Quelltext
1:
Application.ProcessMessages;                    

Eventl. wäre es Sinnvoll die Prcess in einen Thread auszulagern!

Gruß
TINO


Klabautermann - Do 30.01.03 17:27

Hallo,

du musst in die Schleife einfach die Zeile

Quelltext
1:
Application.ProzessMessages;                    

aufnehmen.

Gruß
Klabautermann