Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Sie können dem Anwendungsmodell Funktionen hinzufügen, indem Sie die Overridable
Member der WindowsFormsApplicationBase Klasse überschreiben. Mit dieser Technik können Sie das Verhalten des Anwendungsmodells anpassen und Aufrufe Ihrer eigenen Methoden hinzufügen, während die Anwendung startet und heruntergefahren wird.
Visuelle Übersicht über das Anwendungsmodell
In diesem Abschnitt wird die Sequenz der Funktionsaufrufe im Visual Basic-Anwendungsmodell visuell dargestellt. Im nächsten Abschnitt wird der Zweck der einzelnen Funktionen ausführlich beschrieben.
Die folgende Grafik zeigt die Aufrufsequenz des Anwendungsmodells in einer normalen Visual Basic Windows Forms-Anwendung. Die Sequenz beginnt, wenn die Sub Main
Prozedur die Run Methode aufruft.
Das Visual Basic-Anwendungsmodell stellt auch die StartupNextInstance- und UnhandledException-Ereignisse bereit. Die folgende Grafik zeigt den Mechanismus zum Auslösen dieser Ereignisse.
Überschreiben der Basismethoden
Die Run Methode definiert die Reihenfolge, in der die Application
Methoden ausgeführt werden. Standardmäßig ruft die Sub Main
Prozedur für eine Windows Forms-Anwendung die Run Methode auf.
Wenn es sich bei der Anwendung um eine normale Anwendung (Mehrfachinstanzanwendung) oder die erste Instanz einer Einzelinstanzanwendung handelt, führt die Run Methode die Overridable
Methoden in der folgenden Reihenfolge aus:
OnInitialize. Standardmäßig legt diese Methode die visuellen Stile, die Textanzeigestile und den aktuellen Prinzipal für den Hauptanwendungsthread fest (wenn die Anwendung die Windows-Authentifizierung verwendet) und ruft
ShowSplashScreen
auf, wenn weder/nosplash
noch-nosplash
als Befehlszeilenargument verwendet werden.Die Anwendungsstartsequenz wird abgebrochen, wenn diese Funktion
False
zurückgibt. Dies kann nützlich sein, wenn es Situationen gibt, in denen die Anwendung nicht ausgeführt werden soll.Die OnInitialize Methode ruft die folgenden Methoden auf:
ShowSplashScreen. Bestimmt, ob für die Anwendung ein Begrüßungsbildschirm definiert ist und wenn dies der Fall ist, wird der Begrüßungsbildschirm in einem separaten Thread angezeigt.
Die ShowSplashScreen Methode enthält den Code, der den Begrüßungsbildschirm mindestens für die Anzahl von Millisekunden anzeigt, die von der MinimumSplashScreenDisplayTime Eigenschaft angegeben werden. Um diese Funktionalität zu verwenden, müssen Sie der Anwendung den Begrüßungsbildschirm mithilfe des Project-Designers (der die
My.Application.MinimumSplashScreenDisplayTime
Eigenschaft auf zwei Sekunden festlegt) hinzufügen oder dieMy.Application.MinimumSplashScreenDisplayTime
Eigenschaft in einer Methode festlegen, die die OnInitialize Methode OnCreateSplashScreen überschreibt. Weitere Informationen finden Sie unter MinimumSplashScreenDisplayTime.OnCreateSplashScreen. Ermöglicht einem Designer das Ausgeben von Code, der den Begrüßungsbildschirm initialisiert.
Standardmäßig hat diese Methode keine Auswirkungen. Wenn Sie einen Begrüßungsbildschirm für Ihre Anwendung im Visual Basic Project Designer auswählen, überschreibt der Designer die OnCreateSplashScreen Methode mit einer Methode, die die SplashScreen Eigenschaft auf eine neue Instanz des Begrüßungsbildschirmformulars festlegt.
OnStartup. Stellt einen Erweiterungspunkt für das Auslösen des
Startup
-Ereignisses bereit. Die Startsequenz der Anwendung stoppt, wenn diese Funktion zurückgegeben wirdFalse
.Standardmäßig löst diese Methode das Startup Ereignis aus. Wenn der Ereignishandler die Eigenschaft Cancel des Ereignisarguments auf
True
setzt, gibt die MethodeFalse
zurück, um den Anwendungsstart abzubrechen.OnRun. Bietet den Ausgangspunkt, wenn die Hauptanwendung nach Abschluss der Initialisierung bereit ist, ausgeführt zu werden.
Vor der Eingabe der Windows Forms-Nachrichtenschleife ruft diese Methode standardmäßig die
OnCreateMainForm
Methoden (zum Erstellen des Hauptformulars der Anwendung) undHideSplashScreen
(zum Schließen des Begrüßungsbildschirms) auf:OnCreateMainForm. Bietet eine Möglichkeit, dass ein Designer Code ausgibt, der das Hauptformular initialisiert.
Standardmäßig hat diese Methode keine Auswirkungen. Wenn Sie jedoch ein Hauptformular für Ihre Anwendung im Visual Basic Project Designer auswählen, überschreibt der Designer die OnCreateMainForm Methode mit einer Methode, die die MainForm Eigenschaft auf eine neue Instanz des Hauptformulars festlegt.
HideSplashScreen. Wenn die Anwendung einen Begrüßungsbildschirm definiert und geöffnet ist, schließt diese Methode den Begrüßungsbildschirm.
Standardmäßig schließt diese Methode den Begrüßungsbildschirm.
OnStartupNextInstance. Bietet eine Möglichkeit, das Verhalten einer Anwendung mit einer einzelnen Instanz anzupassen, wenn eine andere Instanz der Anwendung gestartet wird.
Standardmäßig löst diese Methode das StartupNextInstance Ereignis aus.
OnShutdown. Stellt einen Erweiterungspunkt für das Auslösen des
Shutdown
-Ereignisses bereit. Diese Methode wird nicht ausgeführt, wenn in der Hauptanwendung eine unbehandelte Ausnahme auftritt.Standardmäßig löst diese Methode das Shutdown Ereignis aus.
OnUnhandledException. Wird ausgeführt, wenn eine unbehandelte Ausnahme in einer der oben aufgeführten Methoden auftritt.
Standardmäßig löst diese Methode das UnhandledException Ereignis aus, solange kein Debugger angefügt ist und die Anwendung das
UnhandledException
Ereignis behandelt.
Wenn es sich bei der Anwendung um eine Instanzanwendung handelt und die Anwendung bereits ausgeführt wird, ruft die nachfolgende Instanz der Anwendung die OnStartupNextInstance Methode für die ursprüngliche Instanz der Anwendung auf und beendet sie.
Der OnStartupNextInstance(StartupNextInstanceEventArgs) Konstruktor ruft die UseCompatibleTextRendering Eigenschaft auf, um zu bestimmen, welches Textrenderingmodul für die Formulare der Anwendung verwendet werden soll. Standardmäßig gibt die UseCompatibleTextRendering Eigenschaft zurück False
, die angibt, dass das GDI-Textrenderingmodul verwendet wird, das standard in Visual Basic 2005 und höheren Versionen ist. Sie können die Eigenschaft UseCompatibleTextRendering überschreiben, sodass True
zurückgegeben wird. Dies weist darauf hin, dass die GDI+-Textrendering-Engine verwendet wird, welche in Visual Basic .NET 2002 und Visual Basic .NET 2003 standardmäßig ist.
Konfigurieren der Anwendung
Als Teil des Visual Basic-Anwendungsmodells stellt die WindowsFormsApplicationBase Klasse geschützte Eigenschaften bereit, die die Anwendung konfigurieren. Diese Eigenschaften sollten im Konstruktor der implementierenden Klasse festgelegt werden.
In einem Standardmäßigen Windows Forms-Projekt erstellt der Project Designer Code zum Festlegen der Eigenschaften mit den Designereinstellungen. Die Eigenschaften werden nur verwendet, wenn die Anwendung gestartet wird; das Festlegen dieser Elemente nach dem Starten der Anwendung keine Auswirkung hat.
Eigentum | Bestimmt… | Einstellung im Anwendungsbereich des Projekt-Designers |
---|---|---|
IsSingleInstance | Gibt an, ob die Anwendung als Einzelinstanz- oder Mehrfachinstanzanwendung ausgeführt wird. | Einzelinstanzanwendung erstellen-Kontrollkästchen |
EnableVisualStyles | Wenn die Anwendung visuelle Stile verwendet, die mit Windows XP übereinstimmen. | Kontrollkästchen Visuelle XP-Stile aktivieren |
SaveMySettingsOnExit | Wenn die Anwendung die Benutzereinstellungen der Anwendung automatisch speichert, wenn die Anwendung beendet wird. | Kontrollkästchen "Meine.Einstellungen beim Herunterfahren speichern" |
ShutdownStyle | Was dazu führt, dass die Anwendung beendet wird, z. B. wenn das Startformular geschlossen wird oder das letzte Formular geschlossen wird. | Liste Modus für das Herunterfahren |