Sdílet prostřednictvím


Přehled aplikačního modelu jazyka Visual Basic

Visual Basicposkytuje přesně určený model pro ovládání chování aplikací model Windows Forms: Visual Basic model aplikace.Tento model obsahuje události pro zpracování spuštění a vypnutí aplikace, stejně jako události pro zachycení neošetřených výjimek.Poskytuje taky podporu pro vývoj jedno-instančních aplikací.Aplikační model je rozšiřitelný, takže vývojáři, kteří potřebují další ovládací prvek, si můžou přizpůsobit jeho přetížitelné metody.

Použití aplikačního modelu

Typická aplikace potřebuje provádět úkoly při spuštění a vypnutí.Například při jejím spuštění, aplikace může chtít zobrazit úvodní obrazovku, vytvořit připojení k databázi, načíst uložený stav atd.Při vypnutí aplikace může zavřít databázové připojení, uložit aktuální stav a podobně.Kromě toho aplikace může provést určitý kód při neočekávaném ukončení aplikace, jako během výskytu neošetřené výjimky.

Aplikační model Visual Basic usnadňuje vytvoření jedno-instanční aplikace.Jedno-instanční aplikace se liší od běžné aplikace tím, že lze mít spuštěnou pouze jednu instanci aplikace současně.Pokus o spuštění další instance jedno-instanční aplikace má za následek, oznámení původní instanci aplikace, formou události StartupNextInstance, že byl proveden další pokus o spuštění.Oznámení zahrnuje argumenty příkazové řádky další instance.Další instance aplikace je pak uzavřen před tím, než může dojít k jakékoli inicializace.

Jedna-instanční aplikace se spustí a zkontroluje, zda jde o první instanci nebo další instanci aplikace:

  • Pokud jde o první instanci, spustí běžným způsobem.

  • Každý další pokus o spuštění aplikace, v průběhu běhu první instance, má za následek velmi odlišné chování.Pozdější pokus upozorní první instance o argumentech příkazové řádky a okamžitě se ukončí.První instance zpracuje událost StartupNextInstance k určení, co tyto argumenty příkazového řádky znamenají a pokračuje v činnosti.

    Tento diagram znázorňuje, jak další instance zasílá signály první instanci.

    Obrázek jedné Instance aplikace

Zpracováním události StartupNextInstance můžete řídit chování jedno-instančních aplikací.Například aplikace Microsoft Outlook je obvykle spuštěna jako jedno-instanční aplikace; když je aplikace Outlook spuštěna a vy se pokusíte spustit aplikaci Outlook znovu, je vybrána původní instance a další instance se neotevře.

Události v aplikačním modelu

Následující události se nacházejí v aplikační modelu:

  • Spuštění aplikace.Aplikace vyvolá událost Startup při spuštění.Při zpracování této událost, můžete přidat kód, který inicializuje aplikaci před tím, než je načten hlavní formulář.Událost Startup také poskytuje možnost zrušení provádění v průběhu této fáze procesu spuštění.

    Můžete nakonfigurovat aplikaci, aby v průběhu spouštění kódu aplikace zobrazila úvodní obrazovku.Ve výchozím nastavení aplikační model potlačí úvodní obrazovku v případě, že jsou použity argumenty příkazové řádky /nosplash nebo -nosplash.

  • Jedno-instanční aplikace.Událost StartupNextInstance je vyvolána při spuštění následných instancí jedno-instanční aplikace.Událost předá argumenty příkazové řádky další instance.

  • Nezpracované výjimkyPokud aplikace narazí na nezpracovanou vyjímku, vyvolá událost UnhandledException.Vaše obslužné rutiny pro tuto událost můžou přezkoumat tuto vyjímku a určit, zda pokračovat v provádění.

    Událost UnhandledException není vyvolána za určitých okolností.Další informace naleznete v tématu UnhandledException.

  • Změny v možnostech připojení.Pří změně dostupnosti sítě počítače, aplikace vyvolá událost NetworkAvailabilityChanged.

    Událost NetworkAvailabilityChanged není vyvolána za určitých okolností.Další informace naleznete v tématu NetworkAvailabilityChanged.

  • Ukončení aplikace.Aplikace poskytuje událost Shutdown k notifikaci o vypnutí aplikace.V tomto zpracování vyjímek můžete zajistit, že operace, které vaše aplikace musí provést (například zavření a uložení), budou dokončeny.Můžete nakonfigurovat aplikaci k ukončení činnost při zavření hlavního formuláře nebo ji vypnout pouze případě zavření formuláře.

Dostupnost

Ve výchozím nastavení aplikační model Visual Basic je k dispozici pro prejekty modelu Windows Forms.Pokud nakonfigurujete aplikace k použití jiný spouštěcích objektů nebo k spuštění aplikačního kód s vlastní Sub Main, pak tento objekt nebo třída bude pravděpodobně muset poskytnout implementaci třídy WindowsFormsApplicationBase v případě, že chce používat aplikační model.Informace o změně spouštěcího objektu naleznete v tématu Stránka Aplikace, návrhář projektu (Visual Basic).

Viz také

Referenční dokumentace

WindowsFormsApplicationBase

Startup

StartupNextInstance

UnhandledException

Shutdown

NetworkAvailabilityChanged

WindowsFormsApplicationBase

Koncepty

Rozšíření aplikačního modelu jazyka Visual Basic