Extensão do modelo de aplicativo de Visual Basic
Você pode adicionar funcionalidades ao modelo de aplicativo, substituindo os membros Overridable da classe WindowsFormsApplicationBase.Essa técnica permite que você personalize o comportamento do modelo de aplicativo e adicione chamadas para seus próprios métodos quando o aplicativo é iniciado e desligado.
Visão geral visual do modelo de aplicativo
Esta seção visualmente apresenta a seqüência de chamadas de função no modelo de aplicativo do Visual Basic.A seção seguinte descreve a finalidade de cada função em detalhes.
O gráfico a seguir mostra a seqüência de chamadas do modelo de aplicativo em um aplicativo Visual Basic Windows Forms normal.A seqüência é iniciada quando o procedimento Sub Main chama o método Run.
O modelo de aplicativo do Visual Basic também fornece os eventos de StartupNextInstance e de UnhandledException .Os gráficos a seguir mostram o mecanismo para disparar esses eventos.
Substituindo os métodos base
O método de Run define a ordem em que a execução dos métodos de Application .Por padrão, o procedimento Sub Main de um aplicativo Windows Forms chama o método Run.
Se o aplicativo é um aplicativo normal (aplicativo de várias instâncias,) ou a primeira instância de um aplicativo de instância única, o método Run executa os métodos Overridable na seguinte ordem:
OnInitialize.Por padrão, esse método define estilos visuais, estilos de exibição de texto, e o principal atual para o segmento principal do aplicativo (se o aplicativo usa autenticação do windows), e chama ShowSplashScreen se nem nem /nosplash-nosplash são usados como um argumento de linha de comando.
A seqüência de inicialização do aplicativo será cancelada se esta função retornar False.Isso pode ser útil se houver circunstâncias em que o aplicativo não deva executar.
O método OnInitialize chama os métodos a seguir:
ShowSplashScreen.Determina se o aplicativo tem um tela inicial definidas e se isso, exibe a tela inicial em um segmento separado.
O método de ShowSplashScreen contém o código que exibe a tela inicial no mínimo o número de milissegundos especificado pela propriedade de MinimumSplashScreenDisplayTime .Para usar essa funcionalidade, você deve adicionar a tela inicial para seu aplicativo usando o Project Designer (que define a propriedade My.Application.MinimumSplashScreenDisplayTime como dois segundos), ou definir a propriedade My.Application.MinimumSplashScreenDisplayTime em um método que sobrescreve os métodosOnInitialize ou OnCreateSplashScreen.Para obter mais informações, consulte MinimumSplashScreenDisplayTime.
OnCreateSplashScreen.Permite que um designer emitir o código que inicializa a tela inicial.
Por padrão, esse método não fará nada.Se você selecionar um tela inicial para seu aplicativo em Visual BasicDesigner de Projeto, o designer substitui o método de OnCreateSplashScreen com um método que define a propriedade de SplashScreen para uma nova instância do formulário da tela inicial.
OnStartup.Fornece um ponto de extensibilidade para disparar o evento de Startup .A seqüência de inicialização do aplicativo pára se essa função retornar False.
Por padrão, esse método dispara o evento de Startup .Se o manipulador de eventos define a propriedade Cancel do argumento do evento como True o método retornará False para cancelar a inicialização do aplicativo.
OnRun.Fornece o ponto de partida para quando o aplicativo principal está pronto para iniciar a execução, após a inicialização é feita.
Por padrão, antes de entrar no loop de mensagem do Windows Forms, este método chama os métodos OnCreateMainForm (para criar o formulário principal do aplicativo) e HideSplashScreen (para fechar a tela inicial).
OnCreateMainForm.Fornece uma maneira para um designer emitir o código que inicializa o formulário principal.
Por padrão, esse método não fará nada.No entanto, quando você seleciona um principal formulário para o seu aplicativo no Visual Basic Project Designer ,o designer substitui o método OnCreateMainForm com um método que define a propriedade MainForm para uma nova instância do formulário principal.
HideSplashScreen.Se o aplicativo tem um tela inicial definida e está aberto, este método fecha a tela inicial.
Por padrão, esse método fecha a tela inicial.
OnStartupNextInstance.Fornece uma maneira de personalizar como um aplicativo de instância única se comporta quando outra instância do aplicativo inicia.
Por padrão, esse método dispara o evento de StartupNextInstance .
OnShutdown.Fornece um ponto de extensibilidade para disparar o evento de Shutdown .Este método não é executado se uma exceção não manipulada ocorrer no aplicativo principal.
Por padrão, esse método dispara o evento de Shutdown .
OnUnhandledException.Executado se uma exceção não tratada ocorrer em qualquer um dos métodos listados acima.
Por padrão, esse método dispara o evento de UnhandledException como um depurador é anexado e o aplicativo está tratando o evento de UnhandledException .
Se o aplicativo é um aplicativo de instância única, e o aplicativo já está em execução, a instância subseqüente do aplicativo chama o método OnStartupNextInstance na instância original do aplicativo e, em seguida, sai.
O construtor WindowsFormsApplicationBase chama a propriedade UseCompatibleTextRendering para determinar qual mecanismo de renderização de texto a ser usado para formulários do aplicativo.Por padrão, a propriedade UseCompatibleTextRendering retornará False,indicando que o mecanismo de renderização de texto GDI ser usado, qual é o padrão no Visual Basic 2005.Você pode substituir a propriedade UseCompatibleTextRendering para retornar True,que indica que o mecanismo de renderização de texto GDI+ a ser usado, o qual é o padrão no Visual Basic .NET 2002 e Visual Basic .NET 2003.
Configurando o aplicativo
Como parte do modelo de aplicativo Visual Basic, a classe WindowsFormsApplicationBase fornece propriedades protegidas que configuram o aplicativo.Essas propriedades devem ser definida no construtor da classe que as implementam.
Em um projeto do Windows Formspadrão, o Project Designer cria código para definir as propriedades com as configurações de designer.As propriedades são usadas somente quando o aplicativo está sendo iniciado; definí-las após o início do aplicativo não terá efeito.
Propriedade |
Determina |
Definir no painel do designer de projeto |
Se o aplicativo é executado como um aplicativo de instância única ou de múltiplas instâncias. |
a caixa de seleção deFaça o aplicativo de instância única |
|
Se o aplicativo usará estilos visuais que correspondem Windows XP. |
a caixa de seleção deAtivar estilos visuais XP |
|
Se o aplicativo salva automaticamente as alterações nas configurações de usuário do aplicativo, quando sai do aplicativo. |
a caixa de seleção deEm a finalização salvar My.Settings |
|
O que faz com que o aplicativo seja finalizado, como quando o formulário de inicialização fechar ou quando o último formulário fechar. |
lista deModo de finalização |
Consulte também
Referência
Página de aplicativo, Designer de projeto (Visual Basic)