Udostępnij za pośrednictwem


Rozszerzanie modelu aplikacji Visual Basic

Funkcję można dodać do modelu aplikacji, przesłaniając Overridable elementy członkowskie WindowsFormsApplicationBase klasy. Ta technika umożliwia dostosowanie zachowania modelu aplikacji i dodanie wywołań do własnych metod podczas uruchamiania i zamykania aplikacji.

Omówienie wizualne modelu aplikacji

Ta sekcja wizualnie przedstawia sekwencję wywołań funkcji w modelu aplikacji Języka Visual Basic. W następnej sekcji opisano szczegółowo przeznaczenie każdej funkcji.

Poniższa ilustracja przedstawia sekwencję wywołań modelu aplikacji w normalnej aplikacji Visual Basic Windows Forms. Sekwencja rozpoczyna się, gdy Sub Main procedura wywołuje metodę Run .

Diagram showing the Application Model call sequence.

Model aplikacji Języka Visual Basic udostępnia StartupNextInstance również zdarzenia i UnhandledException . Poniższa grafika przedstawia mechanizm podnoszenia tych zdarzeń.

Diagram showing the OnStartupNextInstance method raising the StartupNextInstance event.

Diagram showing the OnUnhandledException method raising the UnhandledException event.

Zastępowanie metod podstawowych

Metoda Run definiuje kolejność uruchamiania Application metod. Domyślnie Sub Main procedura aplikacji Windows Forms wywołuje metodę Run .

Jeśli aplikacja jest normalną aplikacją (aplikacją wielokrotnego wystąpienia) lub pierwszym wystąpieniem aplikacji z jednym wystąpieniem, Run metoda wykonuje Overridable metody w następującej kolejności:

  1. OnInitialize. Domyślnie ta metoda ustawia style wizualizacji, style wyświetlania tekstu i bieżącą jednostkę dla głównego wątku aplikacji (jeśli aplikacja używa uwierzytelniania systemu Windows) i wywołuje ShowSplashScreen metodę , jeśli ani nie /nosplash-nosplash jest używana jako argument wiersza polecenia.

    Sekwencja uruchamiania aplikacji zostanie anulowana, jeśli ta funkcja zwróci wartość False. Może to być przydatne, jeśli istnieją okoliczności, w których aplikacja nie powinna działać.

    Metoda OnInitialize wywołuje następujące metody:

    1. ShowSplashScreen. Określa, czy aplikacja ma zdefiniowany ekran powitalny, a jeśli tak, wyświetla ekran powitalny w osobnym wątku.

      Metoda ShowSplashScreen zawiera kod, który wyświetla ekran powitalny dla co najmniej liczby milisekund określonych przez MinimumSplashScreenDisplayTime właściwość . Aby użyć tej funkcji, należy dodać ekran powitalny do aplikacji przy użyciu programu Project Projektant (który ustawia My.Application.MinimumSplashScreenDisplayTime właściwość na dwie sekundy) lub ustawić My.Application.MinimumSplashScreenDisplayTime właściwość w metodzie, która zastępuje OnInitialize metodę orOnCreateSplashScreen. Aby uzyskać więcej informacji, zobacz MinimumSplashScreenDisplayTime.

    2. OnCreateSplashScreen. Umożliwia projektantowi emitowania kodu, który inicjuje ekran powitalny.

      Domyślnie ta metoda nic nie robi. Jeśli wybierzesz ekran powitalny dla aplikacji w programie Visual Basic Project Projektant, projektant zastąpi OnCreateSplashScreen metodę metodą, która ustawia SplashScreen właściwość na nowe wystąpienie formularza ekranu powitalnego.

  2. OnStartup. Zapewnia punkt rozszerzalności na potrzeby podnoszenia Startup zdarzenia. Sekwencja uruchamiania aplikacji zatrzymuje się, jeśli ta funkcja zwraca wartość False.

    Domyślnie ta metoda wywołuje Startup zdarzenie. Jeśli program obsługi zdarzeń ustawia Cancel właściwość argumentu zdarzenia na Truewartość , metoda zwraca False wartość , aby anulować uruchamianie aplikacji.

  3. OnRun. Zapewnia punkt początkowy, gdy główna aplikacja jest gotowa do uruchomienia, po zakończeniu inicjowania.

    Domyślnie przed wprowadzeniem pętli komunikatów windows Forms ta metoda wywołuje metodę OnCreateMainForm (aby utworzyć formularz główny aplikacji) i HideSplashScreen (aby zamknąć ekran powitalny):

    1. OnCreateMainForm. Umożliwia projektantowi emitowanie kodu, który inicjuje formularz główny.

      Domyślnie ta metoda nic nie robi. Jednak po wybraniu formularza głównego dla aplikacji w programie Visual Basic Project Projektant projektant zastępuje OnCreateMainForm metodę metodą, która ustawia MainForm właściwość na nowe wystąpienie formularza głównego.

    2. HideSplashScreen. Jeśli aplikacja ma zdefiniowany ekran powitalny i jest otwarta, ta metoda zamyka ekran powitalny.

      Domyślnie ta metoda zamyka ekran powitalny.

  4. OnStartupNextInstance. Zapewnia sposób dostosowywania działania aplikacji z pojedynczym wystąpieniem po uruchomieniu innego wystąpienia aplikacji.

    Domyślnie ta metoda wywołuje StartupNextInstance zdarzenie.

  5. OnShutdown. Zapewnia punkt rozszerzalności na potrzeby podnoszenia Shutdown zdarzenia. Ta metoda nie jest uruchamiana, jeśli w głównej aplikacji wystąpi nieobsługiwany wyjątek.

    Domyślnie ta metoda wywołuje Shutdown zdarzenie.

  6. OnUnhandledException. Wykonywane, jeśli nieobsługiwany wyjątek występuje w dowolnej z powyższych metod wymienionych.

    Domyślnie ta metoda zgłasza UnhandledException zdarzenie tak długo, jak debuger nie jest dołączony, a aplikacja obsługuje UnhandledException zdarzenie.

Jeśli aplikacja jest aplikacją z pojedynczym wystąpieniem, a aplikacja jest już uruchomiona, kolejne wystąpienie aplikacji wywołuje OnStartupNextInstance metodę w oryginalnym wystąpieniu aplikacji, a następnie kończy działanie.

Konstruktor OnStartupNextInstance(StartupNextInstanceEventArgs) wywołuje UseCompatibleTextRendering właściwość, aby określić, który aparat renderowania tekstu ma być używany dla formularzy aplikacji. Domyślnie właściwość zwraca Falsewartość , wskazującą, UseCompatibleTextRendering że używany jest aparat renderowania tekstu GDI, który jest domyślny w programie Visual Basic 2005 i nowszych wersjach. Możesz zastąpić UseCompatibleTextRendering właściwość , która wskazuje True, że używany jest aparat renderowania tekstu GDI+, który jest domyślnym ustawieniem w programach Visual Basic .NET 2002 i Visual Basic .NET 2003.

Konfigurowanie aplikacji

W ramach modelu WindowsFormsApplicationBase aplikacji języka Visual Basic klasa udostępnia chronione właściwości, które konfigurują aplikację. Te właściwości należy ustawić w konstruktorze klasy implementowania.

W domyślnym projekcie Windows Forms program Project Projektant tworzy kod, aby ustawić właściwości przy użyciu ustawień projektanta. Właściwości są używane tylko wtedy, gdy aplikacja jest uruchamiana; ustawienie ich po uruchomieniu aplikacji nie ma efektu.

Właściwości Określa Ustawienie w okienku Aplikacja Projektant projektu
IsSingleInstance Niezależnie od tego, czy aplikacja działa jako aplikacja z pojedynczym wystąpieniem, czy z wieloma wystąpieniami. Pole wyboru Utwórz aplikację pojedynczego wystąpienia
EnableVisualStyles Jeśli aplikacja będzie używać stylów wizualnych pasujących do systemu Windows XP. Pole wyboru Włącz style wizualizacji XP
SaveMySettingsOnExit Jeśli aplikacja automatycznie zapisze ustawienia użytkownika aplikacji po zakończeniu działania aplikacji. Zapisz mój. Ustawienia przy zamykaniu pole wyboru
ShutdownStyle Co powoduje zakończenie działania aplikacji, na przykład po zamknięciu formularza uruchamiania lub zamknięciu ostatniego formularza. Lista trybu zamykania

Zobacz też