Application Clase
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Proporciona métodos y propiedades static
para administrar una aplicación, como métodos para iniciar y detener una aplicación o para procesar mensajes de Windows, y propiedades para obtener información sobre una aplicación. Esta clase no puede heredarse.
public ref class Application sealed
public sealed class Application
type Application = class
Public NotInheritable Class Application
- Herencia
-
Application
Ejemplos
En el ejemplo de código siguiente se enumeran los números de un cuadro de lista de un formulario. Cada vez que haga clic en button1
, la aplicación agrega otro número a la lista.
El Main
método llama Run a para iniciar la aplicación, que crea el formulario listBox1
y button1
. Cuando el usuario hace clic en button1
, el button1_Click
método muestra un MessageBox. Si el usuario hace clic No
en MessageBox, el button1_Click
método agrega un número a la lista. Si el usuario hace clic en Yes
, la aplicación llama Exit a para procesar todos los mensajes restantes de la cola y, a continuación, para salir.
Nota
La llamada a Exit producirá un error en la confianza 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
Comentarios
La Application clase tiene métodos para iniciar y detener aplicaciones y subprocesos, y para procesar mensajes de Windows, como se indica a continuación:
Run inicia un bucle de mensaje de aplicación en el subproceso actual y, opcionalmente, hace que un formulario sea visible.
Exit o ExitThread detiene un bucle de mensajes.
DoEvents procesa los mensajes mientras el programa está en un bucle.
AddMessageFilter agrega un filtro de mensajes a la bomba de mensajes de la aplicación para supervisar los mensajes de Windows.
IMessageFilter permite impedir que se genere un evento o realice operaciones especiales antes de invocar un controlador de eventos.
Esta clase tiene CurrentCulture propiedades y CurrentInputLanguage para obtener o establecer información de referencia cultural para el subproceso actual.
No se puede crear una instancia de esta clase.
Propiedades
AllowQuit |
Obtiene un valor que indica si el llamador puede cerrar la aplicación. |
ColorMode |
Proporciona métodos y propiedades |
CommonAppDataPath |
Obtiene la ruta de acceso de los datos de aplicación compartidos por todos los usuarios. |
CommonAppDataRegistry |
Obtiene la clave del Registro de los datos de aplicación compartidos por todos los usuarios. |
CompanyName |
Obtiene el nombre de la compañía asociado a la aplicación. |
CurrentCulture |
Obtiene o establece la información de referencia cultural del subproceso actual. |
CurrentInputLanguage |
Obtiene o establece el idioma de entrada actual para el subproceso actual. |
ExecutablePath |
Obtiene la ruta de acceso del archivo ejecutable que inició la aplicación, incluido el nombre del archivo ejecutable. |
HighDpiMode |
Obtiene el modo con valores altos de PPP actual para la aplicación. |
IsDarkModeEnabled |
Proporciona métodos y propiedades |
LocalUserAppDataPath |
Obtiene la ruta de acceso de los datos de aplicación de un usuario local no móvil. |
MessageLoop |
Obtiene un valor que indica si existe un bucle de mensajes en el subproceso. |
OpenForms |
Obtiene una colección de formularios abiertos que posee la aplicación. |
ProductName |
Obtiene el nombre de producto asociado a la aplicación. |
ProductVersion |
Obtiene la versión de producto asociada a la aplicación. |
RenderWithVisualStyles |
Obtiene un valor que especifica si la aplicación actual dibuja los controles con estilos visuales. |
SafeTopLevelCaptionFormat |
Obtiene o establece la cadena de formato que se va a aplicar a los títulos de las ventanas de nivel superior cuando se muestren con un titular de advertencia. |
StartupPath |
Obtiene la ruta de acceso del archivo ejecutable que inició la aplicación, sin incluir el nombre del archivo ejecutable. |
SystemColorMode |
Proporciona métodos y propiedades |
UserAppDataPath |
Obtiene la ruta de acceso de los datos de aplicación de un usuario. |
UserAppDataRegistry |
Obtiene la clave del Registro de los datos de aplicación de un usuario. |
UseVisualStyles |
Obtiene un valor que indica si los estilos visuales están habilitados para la aplicación. |
UseWaitCursor |
Obtiene o establece si el cursor de espera se utiliza para todos los formularios abiertos de la aplicación. |
VisualStyleState |
Obtiene un valor que especifica cómo se van a aplicar los estilos visuales a las ventanas de la aplicación. |
Métodos
AddMessageFilter(IMessageFilter) |
Agrega un filtro de mensajes que controla los mensajes de Windows conforme se enrutan a sus destinos. |
DoEvents() |
Procesa todos los mensajes de Windows que hay actualmente en la cola de mensajes. |
EnableVisualStyles() |
Habilita los estilos visuales para la aplicación. |
Equals(Object) |
Determina si el objeto especificado es igual que el objeto actual. (Heredado de Object) |
Exit() |
Notifica a todos los surtidores de mensajes que deben terminar y, a continuación, cierra todas las ventanas de la aplicación una vez procesados todos los mensajes. |
Exit(CancelEventArgs) |
Notifica a todos los surtidores de mensajes que deben terminar y, a continuación, cierra todas las ventanas de la aplicación una vez procesados todos los mensajes. |
ExitThread() |
Abandona el bucle de mensajes del subproceso actual y cierra todas las ventanas del subproceso. |
FilterMessage(Message) |
Ejecuta cualquier filtro respecto a un mensaje de ventana y devuelve una copia del mensaje modificado. |
GetHashCode() |
Sirve como la función hash predeterminada. (Heredado de Object) |
GetType() |
Obtiene el Type de la instancia actual. (Heredado de Object) |
MemberwiseClone() |
Crea una copia superficial del Object actual. (Heredado de Object) |
OleRequired() |
Inicializa OLE en el subproceso actual. |
OnThreadException(Exception) |
Genera el evento ThreadException. |
RaiseIdle(EventArgs) |
Genera el evento Idle en escenarios hospedados. |
RegisterMessageLoop(Application+MessageLoopCallback) |
Registra una devolución de llamada para comprobar si el bucle de mensajes se está ejecutando en entornos hospedados. |
RemoveMessageFilter(IMessageFilter) |
Quita un filtro de mensajes del surtidor de mensajes de la aplicación. |
Restart() |
Cierra la aplicación e inicia una nueva instancia inmediatamente. |
Run() |
Inicia la ejecución de un bucle de mensajes de aplicación estándar en el subproceso actual, sin un formulario. |
Run(ApplicationContext) |
Inicia la ejecución de un bucle de mensajes de aplicación estándar en el subproceso actual, con un ApplicationContext. |
Run(Form) |
Inicia la ejecución de un bucle de mensajes de aplicación estándar en el subproceso actual y hace que el formulario especificado esté visible. |
SetColorMode(SystemColorMode) |
Proporciona métodos y propiedades |
SetCompatibleTextRenderingDefault(Boolean) |
Establece el valor predeterminado para toda la aplicación para la |
SetDefaultFont(Font) |
Establece el valor predeterminado Font para el proceso. |
SetHighDpiMode(HighDpiMode) |
Establece el modo con valores altos de PPP del proceso. |
SetSuspendState(PowerState, Boolean, Boolean) |
Suspende o hiberna el sistema o solicita que el sistema se suspenda o hiberne. |
SetUnhandledExceptionMode(UnhandledExceptionMode) |
Indica a la aplicación cómo responder a las excepciones no controladas. |
SetUnhandledExceptionMode(UnhandledExceptionMode, Boolean) |
Indica a la aplicación cómo responder a las excepciones no controladas, aplicando opcionalmente el comportamiento específico del subproceso. |
ToString() |
Devuelve una cadena que representa el objeto actual. (Heredado de Object) |
UnregisterMessageLoop() |
Anula el registro de la devolución de llamada del bucle de mensajes realizada con RegisterMessageLoop(Application+MessageLoopCallback). |
Eventos
ApplicationExit |
Se produce cuando la aplicación se va a cerrar. |
EnterThreadModal |
Se produce cuando la aplicación está a punto de entrar en un estado modal. |
Idle |
Se produce cuando la aplicación termina el procesamiento y se dispone a entrar en estado de inactividad. |
LeaveThreadModal |
Se produce cuando la aplicación está a punto de abandonar un estado modal. |
ThreadException |
Ocurre cuando se produce una excepción de subproceso no interceptada. |
ThreadExit |
Se produce cuando se va a cerrar un subproceso. Cuando el subproceso principal de una aplicación está a punto de cerrarse, se genera primero este evento, seguido de un evento ApplicationExit. |