Verwenden von Haltepunkten 
zum selektiven Anhalten der Programmausführung

Zur Laufzeit erkennt Visual Basic an einem Haltepunkt, dass das Programm unmittelbar vor der Ausführung einer bestimmten Code-Zeile angehalten werden soll. Wenn Visual Basic eine Prozedur ausführt und auf eine Code-Zeile mit einem Haltepunkt trifft, wechselt das Programm in den Haltemodus.

Sie können einen Haltepunkt im Haltemodus oder zur Entwurfszeit definieren oder löschen. Zur Laufzeit ist das nur möglich, wenn sich die Anwendung im Leerlauf befindet.

So definieren oder löschen Sie einen Haltepunkt

1     Setzen Sie die Einfügemarke im Code-Editor-Fenster auf die Code-Zeile, in der Sie einen Haltepunkt definieren oder löschen wollen.

- oder -

Klicken Sie auf der linken Seite des Code-Fensters neben der Zeile, in der Sie einen Haltepunkt definieren oder löschen wollen, auf den Seitenrand.

2     Klicken Sie im Menü Testen oder in der Testen-Symbolleiste auf Haltepunkt ein/aus.

- oder -

Drücken Sie F9.

Im Code-Editor-Fenster kennzeichnet Visual Basic einen Haltepunkt, indem das Programm den Text in dieser Zeile fett formatiert und in der Farbe anzeigt, die Sie für einen Haltepunkt ausgewählt haben. In Abbildung 71 ist z.B. eine Prozedur mit einem Haltepunkt in der fünften Zeile dargestellt.

 

Abbildung 71:   Eine durch einen Haltepunkt angehaltene Prozedur

Erkennen der aktuellen Anweisung

In Abbildung 71 ist die siebte Code-Zeile durch eine rechteckige Umrandung markiert. Diese Markierung zeigt die aktuelle Anweisung bzw. die nächste auszuführende Anweisung an. Auch wenn es sich um eine aktuelle Anweisung handelt, die einen Haltepunkt enthält, wird die Code-Zeile nur durch eine rechteckige Umrandung markiert.

Untersuchen der Anwendung an einem Haltepunkt

Wenn die Anwendung an einem Haltepunkt angehalten wird, können Sie den aktuellen Zustand der Anwendung analysieren. Das Überprüfen der Ergebnisse der Anwendung ist einfach, da Sie den Fokus abwechselnd auf die Formulare und Module Ihrer Anwendung, das Code-Editor-Fenster und die Testfenster bewegen können.

Durch einen Haltepunkt wird die Anwendung unmittelbar vor der Zeile angehalten, die den Haltepunkt enthält. Wenn Sie beobachten möchten, was passiert, wenn die Zeile mit dem Haltepunkt ausgeführt wird, müssen Sie mind. eine weitere Anweisung ausführen und dazu den Befehl Einzelschritt oder Prozedurschritt verwenden.

Wenn Sie versuchen, die Ursache für ein Problem zu finden, müssen Sie dabei im Hinterkopf behalten, dass eine Anweisung indirekt fehlerhaft sein kann, wenn sie einer Variablen einen falschen Wert zuweist. Zum Überprüfen der Werte von Variablen und Eigenschaften im Haltemodus können Sie das Lokal-Fenster, das Dialogfeld Aktuellen Wert anzeigen, Überwachungsausdrücke oder das Direktfenster verwenden.

Verwenden von Stop-Anweisungen

Eine Stop-Anweisung kann in einer Prozedur als Alternative zu einem Haltepunkt verwendet werden. Immer wenn Visual Basic auf eine Stop-Anweisung trifft, unterbricht das Programm die Ausführung und wechselt in den Haltemodus. Stop-Anweisungen funktionieren zwar genauso wie Haltepunkte, aber sie müssen unterschiedlich definiert und gelöscht werden.

Vorsicht   Vergessen Sie nicht, die Stop-Anweisungen aus Ihrem Code zu entfernen, bevor Sie eine .exe-Datei erstellen. Wenn eine eigenständige Visual Basic-Anwendung (.exe) auf eine Stop-Anweisung trifft, wird diese als End-Anweisung interpretiert, d.h., die Ausführung wird sofort beendet, ohne dass die Ereignisse QueryUnload oder Unload auftreten.

Behalten Sie im Hinterkopf, dass eine Stop-Anweisung nichts weiter tut, als die Ausführung zeitweise anzuhalten, während eine End-Anweisung die Ausführung beendet, Variablen zurücksetzt und die Steuerung an den Entwurfsmodus zurückgibt. Wenn Sie eine Stop-Anweisung verwendet haben, können Sie jederzeit im Menü Ausführen auf Fortsetzen klicken, um mit der Ausführung der Anwendung fortzufahren.

Ausführen bestimmter Abschnitte Ihrer Anwendung

Wenn Sie genau wissen, welche Anweisung einen Fehler verursacht hat, kann Ihnen ein einzelner Haltepunkt beim Auffinden des Problems helfen. Häufig werden Sie jedoch nur ungefähr wissen, in welchem Bereich des Codes der Fehler aufgetreten ist. Ein Haltepunkt hilft Ihnen bei der Isolierung dieses Bereichs. Anschließend können Sie Einzelschritte und Prozedurschritte verwenden, um die Auswirkung der folgenden Anweisungen zu untersuchen. Sie können auch Anweisungen überspringen oder mehrmals ausführen, indem Sie die Ausführung in einer neuen Zeile beginnen.

Die hier aufgeführten Testschritte erreichen Sie über die Symbolleiste "Testen" oder über die Tastenkürzel

Schrittmodus

Beschreibung

Tasten-Shortcut

 

Einzelschritt

Die aktuelle Anweisung wird ausgeführt und die Programm­ausführung in der nächsten Zeile unterbrochen, selbst wenn sie sich in einer anderen Prozedur befindet. 

F8

 

Prozedurschritt

Die gesamte Prozedur, die von der aktuellen Zeile aufgerufen wurde, wird ausgeführt und die Programmausführung in der Zeile unterbrochen, die auf die aktuelle Zeile folgt.

UMSCHALT + F8

 

Prozedur abschließen

Der restliche Teil der aktuellen Prozedur wird ausgeführt und die Programmausführung bei der Anweisung unterbrochen, die auf die Anweisung, die die Prozedur aufgerufen hat, folgt.

STRG + UMSCHALT + F8

 

Anmerkung   Um diese Befehle verwenden zu können, müssen Sie sich im Haltemodus befinden. Die Befehle sind zur Entwurfszeit oder zur Laufzeit nicht verfügbar.