Application Classe
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Fornece métodos e propriedades static para gerir uma aplicação, como métodos para iniciar e parar uma aplicação, para processar mensagens Windows e propriedades para obter informações sobre uma aplicação. Esta 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 seguinte exemplo de código lista números numa caixa de lista num formulário. Cada vez que clica button1, a aplicação adiciona mais um número à lista.
O Main método chama Run para iniciar a aplicação, que cria o formulário, listBox1 e button1. Quando o utilizador clica button1, o button1_Click método mostra um MessageBox. Se o utilizador clicar No em , MessageBoxo button1_Click método adiciona um número à lista. Se o utilizador clicar Yes, a aplicação chama Exit para processar todas as mensagens restantes na fila e depois para sair.
Note
A decisão para Exit a vontade falha 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
Observações
A classe Application tem métodos para iniciar e parar aplicações e threads, e para processar Windows mensagens, da seguinte forma:
Run inicia um ciclo de mensagens de aplicação no thread atual e, opcionalmente, torna um formulário visível.
Exit ou ExitThread para um ciclo de mensagens.
DoEvents Processa mensagens enquanto o seu programa está num ciclo.
AddMessageFilter adiciona um filtro de mensagens à bomba de mensagens da aplicação para monitorizar Windows mensagens.
IMessageFilter permite impedir que um evento seja ativado ou realizar operações especiais antes de invocar um gestor de eventos.
Esta classe tem CurrentCulture propriedades CurrentInputLanguage para obter ou definir informação de cultura para o tópico atual.
Não podes criar uma instância desta classe.
Propriedades
| Name | Description |
|---|---|
| AllowQuit |
Recebe um valor que indica se o chamador pode encerrar esta aplicação. |
| CommonAppDataPath |
Obtém o caminho para os dados da aplicação que são partilhados entre todos os utilizadores. |
| CommonAppDataRegistry |
Obtém a chave do registo para os dados da aplicação que são partilhados entre todos os utilizadores. |
| CompanyName |
Obtém o nome da empresa associado à candidatura. |
| CurrentCulture |
Obtém ou define a informação de cultura para o tópico atual. |
| CurrentInputLanguage |
Obtém ou define a linguagem de entrada atual para o thread atual. |
| ExecutablePath |
Obtém o caminho para o ficheiro executável que iniciou a aplicação, incluindo o nome do executável. |
| LocalUserAppDataPath |
Obtém o caminho para os dados da aplicação de um utilizador local e não em roaming. |
| MessageLoop |
Recebe um valor que indica se existe um loop de mensagens neste tópico. |
| OpenForms |
Recebe uma coleção de formulários abertos pertencentes à aplicação. |
| ProductName |
Recebe o nome do produto associado a esta aplicação. |
| ProductVersion |
Recebe a versão do produto associada a esta aplicação. |
| RenderWithVisualStyles |
Recebe um valor que especifica se a aplicação atual está a desenhar controlos com estilos visuais. |
| SafeTopLevelCaptionFormat |
Recebe ou define a cadeia de formato para aplicar às legendas das janelas de topo quando são exibidas com um banner de aviso. |
| StartupPath |
Obtém o caminho do ficheiro executável que iniciou a aplicação, sem incluir o nome do executável. |
| UserAppDataPath |
Obtém o caminho dos dados da aplicação de um utilizador. |
| UserAppDataRegistry |
Obtém a chave do registo para os dados da aplicação de um utilizador. |
| UseWaitCursor |
Obtém ou define se o cursor de espera é usado para todas as formas abertas da aplicação. |
| VisualStyleState |
Recebe um valor que especifica como os estilos visuais são aplicados às janelas da aplicação. |
Métodos
| Name | Description |
|---|---|
| AddMessageFilter(IMessageFilter) |
Adiciona um filtro de mensagens para monitorizar as mensagens do Windows à medida que são encaminhadas para os seus destinos. |
| DoEvents() |
Processa todas as mensagens do Windows atualmente na fila de mensagens. |
| EnableVisualStyles() |
Permite estilos visuais para a aplicação. |
| Equals(Object) |
Determina se o objeto especificado é igual ao objeto atual. (Herdado de Object) |
| Exit() |
Informa todas as mensagens pumps de que devem terminar e depois fecha todas as janelas de aplicação após o processamento das mensagens. |
| Exit(CancelEventArgs) |
Informa todas as mensagens pumps de que devem terminar e depois fecha todas as janelas de aplicação após o processamento das mensagens. |
| ExitThread() |
Sai do loop de mensagens na thread atual e fecha todas as janelas da thread. |
| FilterMessage(Message) |
Executa quaisquer filtros contra uma mensagem de janela e devolve uma cópia da mensagem modificada. |
| GetHashCode() |
Serve como função de hash predefinida. (Herdado de Object) |
| GetType() |
Obtém o Type da instância atual. (Herdado de Object) |
| MemberwiseClone() |
Cria uma cópia superficial do atual Object. (Herdado de Object) |
| OleRequired() |
Inicializa o OLE na thread atual. |
| OnThreadException(Exception) |
Eleva o ThreadException evento. |
| RaiseIdle(EventArgs) |
Eleva o Idle evento em cenários hospedados. |
| RegisterMessageLoop(Application+MessageLoopCallback) |
Regista um callback para verificar se o loop de mensagens está a correr em ambientes alojados. |
| RemoveMessageFilter(IMessageFilter) |
Remove um filtro de mensagens da bomba de mensagens da aplicação. |
| Restart() |
Fecha a aplicação e inicia uma nova instância imediatamente. |
| Run() |
Começa a executar um ciclo padrão de mensagens de aplicação no thread atual, sem formulário. |
| Run(ApplicationContext) |
Começa a executar um ciclo padrão de mensagens de aplicação na thread atual, com um ApplicationContext. |
| Run(Form) |
Começa a executar um ciclo padrão de mensagens de aplicação no thread atual e torna o formulário especificado visível. |
| SetCompatibleTextRenderingDefault(Boolean) |
Define o padrão da aplicação para a |
| SetSuspendState(PowerState, Boolean, Boolean) |
Suspende ou hiberna o sistema, ou solicita que o sistema seja suspenso ou hibernado. |
| SetUnhandledExceptionMode(UnhandledExceptionMode, Boolean) |
Instrui a aplicação como responder a exceções não tratadas, aplicando opcionalmente comportamentos específicos de threads. |
| SetUnhandledExceptionMode(UnhandledExceptionMode) |
Instrui a aplicação como responder a exceções não tratadas. |
| ToString() |
Devolve uma cadeia que representa o objeto atual. (Herdado de Object) |
| UnregisterMessageLoop() |
Desregista o callback do loop de mensagens feito com RegisterMessageLoop(Application+MessageLoopCallback). |
evento
| Name | Description |
|---|---|
| ApplicationExit |
Ocorre quando a aplicação está prestes a desligar. |
| EnterThreadModal |
Ocorre quando a aplicação está prestes a entrar num estado modal. |
| Idle |
Ocorre quando a aplicação termina o processamento e está prestes a entrar no estado de inatividade. |
| LeaveThreadModal |
Ocorre quando a aplicação está prestes a sair de um estado modal. |
| ThreadException |
Ocorre quando uma exceção de thread untraped é lançada. |
| ThreadExit |
Acontece quando um tópico está prestes a encerrar. Quando o fio principal de uma aplicação está prestes a ser desligado, este evento é levantado primeiro, seguido por um ApplicationExit evento. |