Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Do aplikačního modelu můžete přidat funkcionalitu přepsáním Overridable členů třídy WindowsFormsApplicationBase. Tato technika umožňuje přizpůsobit chování aplikačního modelu a přidat volání do vlastních metod při spuštění a vypnutí aplikace.
Vizuální přehled aplikačního modelu
Tato část vizuálně představuje posloupnost volání funkcí v aplikačním modelu jazyka Visual Basic. Další část podrobně popisuje účel každé funkce.
Následující obrázek znázorňuje posloupnost volání modelu aplikace v normální aplikaci Windows Forms jazyka Visual Basic. Sekvence se spustí, když procedura Sub Main volá metodu Run .
Aplikační model jazyka Visual Basic také poskytuje události StartupNextInstance a UnhandledException. Následující grafika ukazuje mechanismus pro vyvolání těchto událostí.
Přepsání základních metod
Metoda Run definuje pořadí, ve kterém se Application metody spouští. Ve výchozím nastavení procedura Sub Main pro aplikaci Windows Forms volá metodu Run .
Pokud je aplikace normální aplikací (aplikace s více instancemi) nebo první instancí aplikace s jednou instancí, Run metoda provede Overridable metody v následujícím pořadí:
OnInitialize. Ve výchozím nastavení tato metoda nastaví vizuální styly, styly zobrazení textu a aktuální hlavní identitu pro hlavní vlákno aplikace (pokud aplikace používá ověřování systému Windows) a volá
ShowSplashScreen, pokud se ani/nosplashani-nosplashnepoužívá jako argument příkazového řádku.Spouštěcí sekvence aplikace je zrušena, pokud tato funkce vrátí
False. To může být užitečné, pokud existují okolnosti, ve kterých by aplikace neměla běžet.Metoda OnInitialize volá následující metody:
ShowSplashScreen. Určuje, jestli má aplikace definovanou úvodní obrazovku a pokud ano, zobrazí úvodní obrazovku na samostatném vlákně.
Metoda ShowSplashScreen obsahuje kód, který zobrazuje úvodní obrazovku alespoň pro počet milisekund určených MinimumSplashScreenDisplayTime vlastností. Chcete-li tuto funkci použít, musíte do aplikace přidat úvodní obrazovku pomocí Návrháře projektu (který nastaví
My.Application.MinimumSplashScreenDisplayTimevlastnost na dvě sekundy) nebo nastavitMy.Application.MinimumSplashScreenDisplayTimevlastnost v metodě, která přepíše OnInitialize nebo OnCreateSplashScreen metodu. Další informace najdete v tématu MinimumSplashScreenDisplayTime.OnCreateSplashScreen. Umožňuje návrháři vygenerovat kód, který inicializuje úvodní obrazovku.
Ve výchozím nastavení tato metoda nedělá nic. Pokud v jazyce Visual Basic vyberete v Návrháři projektu úvodní obrazovku pro svou aplikaci, návrhář přepíše metodu OnCreateSplashScreen metodou, která nastaví vlastnost SplashScreen na novou instanci formuláře úvodní obrazovky.
OnStartup. Poskytuje rozšiřitelnostní bod pro vyvolání události
Startup. Spouštěcí sekvence aplikace se zastaví, pokud tato funkce vrátíFalse.Ve výchozím nastavení tato metoda vyvolá Startup událost. Pokud obslužná rutina události nastaví vlastnost argumentu události Cancel na
True, metoda vrátíFalsea tím zruší spuštění aplikace.OnRun. Poskytuje výchozí bod, kdy je hlavní aplikace připravena spustit po dokončení inicializace.
Ve výchozím nastavení před vstupem do smyčky zpráv Windows Forms tato metoda volá
OnCreateMainFormmetody (k vytvoření hlavního formuláře aplikace) aHideSplashScreen(pro zavření úvodní obrazovky):OnCreateMainForm. Poskytuje způsob, jak návrhář vygenerovat kód, který inicializuje hlavní formulář.
Ve výchozím nastavení tato metoda nedělá nic. Pokud však vyberete hlavní formulář pro aplikaci v návrháři projektu jazyka Visual Basic, návrhář přepíše OnCreateMainForm metodu metodou, která nastaví MainForm vlastnost na novou instanci hlavního formuláře.
HideSplashScreen. Pokud má aplikace definovanou úvodní obrazovku a je otevřená, tato metoda úvodní obrazovku zavře.
Ve výchozím nastavení tato metoda zavře úvodní obrazovku.
OnStartupNextInstance. Poskytuje způsob, jak přizpůsobit chování aplikace s jednou instancí při spuštění jiné instance aplikace.
Ve výchozím nastavení tato metoda vyvolá StartupNextInstance událost.
OnShutdown. Poskytuje rozšiřitelnostní bod pro vyvolání události
Shutdown. Tato metoda se nespustí, pokud v hlavní aplikaci dojde k neošetřené výjimce.Ve výchozím nastavení tato metoda vyvolá Shutdown událost.
OnUnhandledException. Provede se, pokud dojde k neošetřené výjimce v některé z výše uvedených metod.
Ve výchozím nastavení tato metoda vyvolá UnhandledException událost, pokud ladicí program není připojen a aplikace zpracovává
UnhandledExceptionudálost.
Pokud je aplikace aplikací s jednou instancí a aplikace je již spuštěna, následná instance aplikace volá OnStartupNextInstance metodu na původní instanci aplikace a poté se ukončí.
Konstruktor OnStartupNextInstance(StartupNextInstanceEventArgs) volá UseCompatibleTextRendering vlastnost, která určuje, který textový vykreslovací modul se má použít pro formuláře aplikace. Ve výchozím nastavení vlastnost UseCompatibleTextRendering vrací False, což naznačuje, že se používá vykreslovací modul pro vykreslování textu GDI, který je výchozí v jazyce Visual Basic 2005 a novějších verzích. Můžete přepsat UseCompatibleTextRendering vlastnost, aby vracela True, což znamená, že bude použit vykreslovací modul GDI+ textu, a to je výchozí hodnota v jazyce Visual Basic .NET 2002 a Visual Basic .NET 2003.
Konfigurace aplikace
V rámci modelu WindowsFormsApplicationBase aplikace jazyka Visual Basic poskytuje třída chráněné vlastnosti, které konfiguruje aplikaci. Tyto vlastnosti by měly být nastaveny v konstruktoru implementovací třídy.
Ve výchozím projektu Windows Forms vytvoří Návrhář projektu kód pro nastavení vlastností pomocí nastavení návrháře. Vlastnosti se používají pouze při spuštění aplikace; nastavení po spuštění aplikace nemá žádný vliv.
| Vlastnictví | Určuje | Nastavení v podokně aplikace v návrháři projektu |
|---|---|---|
| IsSingleInstance | Určuje, jestli aplikace běží jako jedna instance nebo aplikace s více instancemi. | Zaškrtávací políčko Nastavit aplikaci s jednou instancí |
| EnableVisualStyles | Pokud aplikace bude používat vizuální styly, které odpovídají systému Windows XP. | Zaškrtávací políčko Povolit styly vizuálů XP |
| SaveMySettingsOnExit | Pokud aplikace při ukončení aplikace automaticky uloží změny uživatelského nastavení aplikace. | Uložit My.Settings při vypnutí zaškrtávací políčko |
| ShutdownStyle | Co způsobí ukončení aplikace, například při zavření spouštěcího formuláře nebo při zavření posledního formuláře. | Seznam režimů vypnutí |