Application Classe
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Fornece propriedades e métodos static
para gerenciar um aplicativo, como métodos para iniciar e interromper um aplicativo, para processar mensagens do Windows e propriedades para obter informações sobre um aplicativo. Essa classe não pode ser herdada.
public ref class Application sealed
public sealed class Application
type Application = class
Public NotInheritable Class Application
- Herança
-
Application
Exemplos
O exemplo de código a seguir lista números em uma caixa de listagem em um formulário. Cada vez que você clica button1
em , o aplicativo adiciona outro número à lista.
O Main
método chama Run para iniciar o aplicativo, que cria o formulário e listBox1
button1
. Quando o usuário clica button1
em , o button1_Click
método exibe um MessageBox. Se o usuário clicar No
no MessageBox, o button1_Click
método adicionará um número à lista. Se o usuário clicar Yes
em , o aplicativo chamará Exit para processar todas as mensagens restantes na fila e, em seguida, para sair.
Observação
A chamada para Exit falhará em confiança parcial.
public ref class Form1: public System::Windows::Forms::Form
{
private:
Button^ button1;
ListBox^ listBox1;
public:
Form1()
{
button1 = gcnew Button;
button1->Left = 200;
button1->Text = "Exit";
button1->Click += gcnew EventHandler( this, &Form1::button1_Click );
listBox1 = gcnew ListBox;
this->Controls->Add( button1 );
this->Controls->Add( listBox1 );
}
private:
void Form1::button1_Click( Object^ /*sender*/, EventArgs^ /*e*/ )
{
int count = 1;
// Check to see whether the user wants to exit
// the application. If not, add a number to the list box.
while ( MessageBox::Show( "Exit application?", "", MessageBoxButtons::YesNo ) == ::DialogResult::No )
{
listBox1->Items->Add( count );
count += 1;
}
// The user wants to exit the application.
// Close everything down.
Application::Exit();
}
};
int main()
{
// Starts the application.
Application::Run( gcnew Form1 );
}
public class Form1 : Form
{
[STAThread]
public static void Main()
{
// Start the application.
Application.Run(new Form1());
}
private Button button1;
private ListBox listBox1;
public Form1()
{
button1 = new Button();
button1.Left = 200;
button1.Text = "Exit";
button1.Click += new EventHandler(button1_Click);
listBox1 = new ListBox();
this.Controls.Add(button1);
this.Controls.Add(listBox1);
}
private void button1_Click(object sender, System.EventArgs e)
{
int count = 1;
// Check to see whether the user wants to exit the application.
// If not, add a number to the list box.
while (MessageBox.Show("Exit application?", "",
MessageBoxButtons.YesNo)==DialogResult.No)
{
listBox1.Items.Add(count);
count += 1;
}
// The user wants to exit the application.
// Close everything down.
Application.Exit();
}
}
Public Class Form1
Inherits Form
<STAThread()> _
Shared Sub Main()
' Start the application.
Application.Run(New Form1)
End Sub
Private WithEvents button1 As Button
Private WithEvents listBox1 As ListBox
Public Sub New()
button1 = New Button
button1.Left = 200
button1.Text = "Exit"
listBox1 = New ListBox
Me.Controls.Add(button1)
Me.Controls.Add(listBox1)
End Sub
Private Sub button1_Click(ByVal sender As Object, _
ByVal e As System.EventArgs) Handles button1.Click
Dim count As Integer = 1
' Check to see whether the user wants to exit the application.
' If not, add a number to the list box.
While (MessageBox.Show("Exit application?", "", _
MessageBoxButtons.YesNo) = DialogResult.No)
listBox1.Items.Add(count)
count += 1
End While
' The user wants to exit the application.
' Close everything down.
Application.Exit()
End Sub
End Class
Comentários
A Application classe tem métodos para iniciar e parar aplicativos e threads e processar mensagens do Windows, da seguinte maneira:
Run inicia um loop de mensagem de aplicativo no thread atual e, opcionalmente, torna um formulário visível.
Exit ou ExitThread interrompe um loop de mensagem.
DoEvents processa mensagens enquanto o programa está em um loop.
AddMessageFilter adiciona um filtro de mensagem à bomba de mensagem do aplicativo para monitorar mensagens do Windows.
IMessageFilter permite impedir que um evento seja acionado ou executar operações especiais antes de invocar um manipulador de eventos.
Essa classe tem CurrentCulture propriedades e CurrentInputLanguage para obter ou definir informações de cultura para o thread atual.
Não é possível criar uma instância dessa classe.
Propriedades
AllowQuit |
Obtém um valor que indica se o chamador pode sair desse aplicativo. |
ColorMode |
Fornece propriedades e métodos |
CommonAppDataPath |
Obtém o caminho para os dados de aplicativo compartilhados entre todos os usuários. |
CommonAppDataRegistry |
Obtém a chave do Registro dos dados de aplicativos compartilhados entre todos os usuários. |
CompanyName |
Obtém o nome da empresa associado ao aplicativo. |
CurrentCulture |
Obtém ou define as informações de cultura do thread atual. |
CurrentInputLanguage |
Obtém ou define o idioma de entrada atual para o thread atual. |
ExecutablePath |
Obtém o caminho para o arquivo executável que iniciou o aplicativo, incluindo o nome do executável. |
HighDpiMode |
Obtém o modo de DPI alto atual do aplicativo. |
IsDarkModeEnabled |
Fornece propriedades e métodos |
LocalUserAppDataPath |
Obtém o caminho para os dados de aplicativo de um usuário local não roaming. |
MessageLoop |
Obtém um valor que indica se um loop de mensagem existe neste thread. |
OpenForms |
Obtém uma coleção de formulários abertos pertencentes ao aplicativo. |
ProductName |
Obtém a versão do produto associada a este aplicativo. |
ProductVersion |
Obtém a versão do produto associada a este aplicativo. |
RenderWithVisualStyles |
Obtém um valor que especifica se o aplicativo atual está desenhando controles com estilos visuais. |
SafeTopLevelCaptionFormat |
Obtém ou define a cadeia de caracteres de formato a ser aplicada às legendas da janela de nível superior quando eles são exibidos com um banner de aviso. |
StartupPath |
Obtém o caminho para o arquivo executável que iniciou o aplicativo, não incluindo o nome do executável. |
SystemColorMode |
Fornece propriedades e métodos |
UserAppDataPath |
Obtém o caminho para os dados de aplicativo de um usuário. |
UserAppDataRegistry |
Obtém a chave do Registro dos dados de aplicativo de um usuário. |
UseVisualStyles |
Obtém um valor que indica se os estilos visuais estão habilitados para o aplicativo. |
UseWaitCursor |
Obtém ou define se o cursor de espera é usado para todos os formulários abertos do aplicativo. |
VisualStyleState |
Obtém um valor que especifica como os estilos visuais são aplicados às janelas do aplicativo. |
Métodos
AddMessageFilter(IMessageFilter) |
Adiciona um filtro de mensagem para monitorar mensagens do Windows à medida que elas são direcionadas para seus destinos. |
DoEvents() |
Processa todas as mensagens do Windows atualmente na fila de mensagens. |
EnableVisualStyles() |
Permite estilos visuais para o aplicativo. |
Equals(Object) |
Determina se o objeto especificado é igual ao objeto atual. (Herdado de Object) |
Exit() |
Informa todos os aumentos de mensagem que devem encerrar e, em seguida, fecha todas as janelas de aplicativo após as mensagens terem sido processadas. |
Exit(CancelEventArgs) |
Informa todos os aumentos de mensagem que devem encerrar e, em seguida, fecha todas as janelas de aplicativo após as mensagens terem sido processadas. |
ExitThread() |
Sai do loop de mensagem no thread atual e fecha todas as janelas no thread. |
FilterMessage(Message) |
Executa qualquer filtro em uma mensagem de janela e retorna uma cópia da mensagem modificada. |
GetHashCode() |
Serve como a função de hash padrão. (Herdado de Object) |
GetType() |
Obtém o Type da instância atual. (Herdado de Object) |
MemberwiseClone() |
Cria uma cópia superficial do Object atual. (Herdado de Object) |
OleRequired() |
Inicializa a OLE no thread atual. |
OnThreadException(Exception) |
Aciona o evento ThreadException. |
RaiseIdle(EventArgs) |
Gera o Idle evento em cenários hospedados. |
RegisterMessageLoop(Application+MessageLoopCallback) |
Registra um retorno de chamada para verificar se o loop de mensagens está em execução em ambientes hospedados. |
RemoveMessageFilter(IMessageFilter) |
Remove um filtro de mensagens da bomba de mensagens do aplicativo. |
Restart() |
Desliga o aplicativo e inicia uma nova instância imediatamente. |
Run() |
Inicia a execução de um loop de mensagens do aplicativo padrão no thread atual, sem nenhum formulário. |
Run(ApplicationContext) |
Inicia a execução de um loop de mensagens do aplicativo padrão no thread atual, com um ApplicationContext. |
Run(Form) |
Começa a executar um loop de mensagem do aplicativo padrão no thread atual e torna o formulário especificado visível. |
SetColorMode(SystemColorMode) |
Fornece propriedades e métodos |
SetCompatibleTextRenderingDefault(Boolean) |
Define o padrão do aplicativo para a propriedade |
SetDefaultFont(Font) |
Define o padrão Font para o processo. |
SetHighDpiMode(HighDpiMode) |
Define o modo de DPI alto do processo. |
SetSuspendState(PowerState, Boolean, Boolean) |
Suspende ou hiberna o sistema, ou solicita que o sistema seja suspenso ou hibernado. |
SetUnhandledExceptionMode(UnhandledExceptionMode) |
Instrui o aplicativo a como responder às exceções não tratadas. |
SetUnhandledExceptionMode(UnhandledExceptionMode, Boolean) |
Instrui o aplicativo sobre como responder a exceções sem tratamento, opcionalmente aplicando o comportamento específico do thread. |
ToString() |
Retorna uma cadeia de caracteres que representa o objeto atual. (Herdado de Object) |
UnregisterMessageLoop() |
Cancela o registro do retorno de chamada de loop de mensagem feito com RegisterMessageLoop(Application+MessageLoopCallback). |
Eventos
ApplicationExit |
Ocorre quando o aplicativo está prestes a ser desligado. |
EnterThreadModal |
Ocorre quando o aplicativo está prestes a entrar em estado modal. |
Idle |
Ocorre quando o aplicativo termina o processamento e está prestes a entrar no estado ocioso. |
LeaveThreadModal |
Ocorre quando o aplicativo está prestes a sair do estado modal. |
ThreadException |
Ocorre quando uma exceção de thread não interceptada é gerada. |
ThreadExit |
Ocorre quando um thread está prestes a ser desligado. Quando o thread principal de um aplicativo está prestes a ser desligado, esse evento é acionado primeiro, seguido por um evento ApplicationExit. |