Abbruch Button VB6

TobiTo

Mitglied
Es gibt bestimmt die Möglichkeit in einem Formular mit Hilfe eines Abbruch-Buttons die aktuelle Prozedur zu beenden. Ich durchdurche Textdateien, was mitunter sehr lange dauert und die gesamte Prozessorlast erfordert. Es müsste doch einem übergeordneten Befehl geben, der einen Abbruch erlaubt.

Weiss jemand Rat???
:(
 
Wenn Du eine Schleife benutzt, um die Dateien zu durchsuchen, kannst Du mit einer DoEvents-Anweisung verhindern, dass die Anwendung einfriert und dafür sorgen, dass eventuell anfallende Ereignisse noch verarbeitet werden.
Das könnte z.B. so aussehen:
Code:
Do While Not Alle_Dateien_verarbeitet
    If Not Abbrechen Then
        ' Dein Code zum Durchsuchen der Datei
    End If
    Alle_Dateien_verarbeitet = Abbrechen
    DoEvents
Loop
In dem Ereignis für den Klick auf den Abbrechen-Button setzt Du einfach die globale Variable "Abbrechen" auf True.
 
Super, danke das klappt.
Ist leider deutlich langsamer geworden, aber das ist ja wohl auch unvermeidbar. Und vielen Dank für die superschnelle Antwort.
 
Dass die Anwendung dadurch etwas langsamer wird, lässt sich leider nicht verhindern - zumindest nicht mit VB. Das liegt daran, dass bei jedem Schleifendurchlauf der Nachrichtenstapel für die Anwendung verarbeitet wird und dann erst der nächste Schleifendurchlauf anfängt.
Mit C++ könntest Du den Nachrichtenstapel evtl. noch etwas einschränken, aber VB ist dazu zu "oberflächlich".
 

Neue Beiträge

Zurück