Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Você pode adicionar funcionalidade ao modelo de aplicativo substituindo os Overridable membros da WindowsFormsApplicationBase classe. Essa técnica permite personalizar o comportamento do modelo de aplicativo e adicionar chamadas aos seus próprios métodos à medida que o aplicativo é iniciado e desligado.
Visão geral visual do modelo de aplicativo
Esta seção apresenta visualmente a sequência de chamadas de função no Modelo de Aplicativo do Visual Basic. A próxima seção descreve a finalidade de cada função em detalhes.
O gráfico a seguir mostra a sequência de chamadas do modelo de aplicativo em um aplicativo normal do Visual Basic Windows Forms. A sequência começa quando o Sub Main procedimento chama o Run método.
O Modelo de Aplicativo do Visual Basic também fornece os eventos StartupNextInstance e UnhandledException. Os gráficos a seguir mostram o mecanismo para gerar esses eventos.
Substituindo os métodos base
O Run método define a ordem na qual os Application métodos são executados. Por padrão, o procedimento Sub Main de um aplicativo Windows Forms chama o método Run.
Se o aplicativo for um aplicativo normal (aplicativo de várias instâncias) ou a primeira instância de um aplicativo de instância única, o Run método executará os Overridable métodos na seguinte ordem:
OnInitialize. Por padrão, esse método define os estilos visuais, os estilos de exibição de texto e o principal atual para o encadeamento do aplicativo principal (se ele usar autenticação do Windows) e chama
ShowSplashScreense nem/nosplashnem-nosplashforem usados como um argumento de linha de comando.A sequência de inicialização do aplicativo será cancelada se essa função retornar
False. Isso pode ser útil se houver circunstâncias em que o aplicativo não deve ser executado.O OnInitialize método chama os seguintes métodos:
ShowSplashScreen. Determina se o aplicativo tem uma tela inicial definida e, se isso acontecer, exibe a tela inicial em um thread separado.
O ShowSplashScreen método contém o código que exibe a tela inicial para pelo menos o número de milissegundos especificado pela MinimumSplashScreenDisplayTime propriedade. Para usar essa funcionalidade, você deve adicionar a tela inicial ao aplicativo usando o Designer de Projeto (que define a propriedade
My.Application.MinimumSplashScreenDisplayTimepara dois segundos) ou definir a propriedadeMy.Application.MinimumSplashScreenDisplayTimeem um método que substitua o método OnInitialize ou o método OnCreateSplashScreen. Para obter mais informações, consulte MinimumSplashScreenDisplayTime.OnCreateSplashScreen. Permite que um designer emita um código que inicialize a tela de abertura.
Por padrão, esse método não faz nada. Se você selecionar uma tela inicial para seu aplicativo no Designer de Projeto do Visual Basic, o designer substituirá o OnCreateSplashScreen método por um método que define a SplashScreen propriedade como uma nova instância do formulário de tela inicial.
OnStartup. Fornece um ponto de extensibilidade para gerar o evento
Startup. A sequência de inicialização do aplicativo será interrompida se essa função retornarFalse.Por padrão, esse método gera o Startup evento. Se o manipulador de eventos definir a Cancel propriedade do argumento de evento como
True, o método retornaráFalsepara cancelar a inicialização do aplicativo.OnRun. Fornece o ponto de partida para quando o aplicativo principal está pronto para começar a ser executado, após a inicialização ser concluída.
Por padrão, antes de inserir o loop de mensagens do Windows Forms, esse método chama os
OnCreateMainFormmétodos (para criar o formulário principal do aplicativo) eHideSplashScreen(para fechar a tela inicial):OnCreateMainForm. Fornece uma maneira de um designer emitir código que inicializa o formulário principal.
Por padrão, esse método não faz nada. No entanto, quando você seleciona um formulário principal para seu aplicativo no Designer de Projeto do Visual Basic, o designer substitui o OnCreateMainForm método por um método que define a MainForm propriedade como uma nova instância do formulário principal.
HideSplashScreen. Se o aplicativo tiver uma tela inicial definida e estiver aberta, esse método fechará 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 é iniciada.
Por padrão, esse método gera o StartupNextInstance evento.
OnShutdown. Fornece um ponto de extensibilidade para gerar o evento
Shutdown. Esse método não será executado se ocorrer uma exceção sem tratamento no aplicativo principal.Por padrão, esse método gera o Shutdown evento.
OnUnhandledException. Executado se uma exceção sem tratamento ocorrer em qualquer um dos métodos listados acima.
Por padrão, esse método gera o UnhandledException evento desde que um depurador não esteja anexado e o aplicativo esteja tratando o
UnhandledExceptionevento.
Se o aplicativo for um aplicativo de instância única e o aplicativo já estiver em execução, a instância subsequente do aplicativo chamará o OnStartupNextInstance método na instância original do aplicativo e sairá.
O OnStartupNextInstance(StartupNextInstanceEventArgs) construtor chama a UseCompatibleTextRendering propriedade para determinar qual mecanismo de renderização de texto usar para os formulários do aplicativo. Por padrão, a UseCompatibleTextRendering propriedade retorna False, indicando que o mecanismo de renderização de texto GDI será usado, que é o padrão no Visual Basic 2005 e versões posteriores. Você pode sobrescrever a propriedade UseCompatibleTextRendering para retornar True, o que indica que o mecanismo de renderização de texto GDI+ será usado. Este é o padrão no Visual Basic .NET 2002 e no Visual Basic .NET 2003.
Configurando o aplicativo
Como parte do modelo de Aplicativo do Visual Basic, a WindowsFormsApplicationBase classe fornece propriedades protegidas que configuram o aplicativo. Essas propriedades devem ser definidas no construtor da classe de implementação.
Em um projeto padrão do Windows Forms, o Designer de Projeto cria código para definir as propriedades com as configurações do designer. As propriedades são usadas somente quando o aplicativo está sendo iniciado; defini-los após o início do aplicativo não tem efeito.
| Propriedade | Determina | Configuração no painel do Aplicativo do Designer de Projeto |
|---|---|---|
| IsSingleInstance | Se o aplicativo é executado como um aplicativo de instância única ou de várias instâncias. | Caixa de seleção Criar aplicativo de instância única |
| EnableVisualStyles | Se o aplicativo usar estilos visuais que correspondam ao Windows XP. | Caixa de seleção para habilitar estilos visuais do XP |
| SaveMySettingsOnExit | Se o aplicativo salvar automaticamente as alterações nas configurações do usuário do aplicativo quando ele for encerrado. | Caixa de seleção Salvar My.Settings no Desligamento |
| ShutdownStyle | O que faz com que o aplicativo seja encerrado, como quando o formulário de inicialização é fechado ou quando o último formulário é fechado. | Lista de Modo de desligamento |