Application Classe

Définition

Fournit static méthodes et propriétés pour gérer une application, telles que les méthodes de démarrage et d’arrêt d’une application, pour traiter les messages Windows et les propriétés pour obtenir des informations sur une application. Cette classe ne peut pas être héritée.

public ref class Application sealed
public sealed class Application
type Application = class
Public NotInheritable Class Application
Héritage
Application

Exemples

L’exemple de code suivant répertorie les numéros d’une zone de liste dans un formulaire. Chaque fois que vous cliquez, button1l’application ajoute un autre numéro à la liste.

La Main méthode appelle Run pour démarrer l’application, qui crée le formulaire et button1listBox1 . Lorsque l’utilisateur clique sur button1, la button1_Click méthode affiche un MessageBox. Si l’utilisateur clique No sur le MessageBoxbouton , la button1_Click méthode ajoute un nombre à la liste. Si l’utilisateur clique sur Yes, l’application appelle Exit pour traiter tous les messages restants dans la file d’attente, puis pour quitter.

Note

L’appel à Exit échouera en confiance partielle.

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

Remarques

La classe Application a des méthodes pour démarrer et arrêter des applications et des threads, et pour traiter les messages Windows, comme suit :

  • Run démarre une boucle de message d’application sur le thread actuel et, éventuellement, rend un formulaire visible.

  • Exit ou ExitThread arrête une boucle de message.

  • DoEvents traite les messages pendant que votre programme est en boucle.

  • AddMessageFilter ajoute un filtre de message à la pompe de messages de l’application pour surveiller les messages Windows.

  • IMessageFilter vous permet d’empêcher un événement d’être déclenché ou d’effectuer des opérations spéciales avant d’appeler un gestionnaire d’événements.

Cette classe a CurrentCulture et CurrentInputLanguage des propriétés pour obtenir ou définir des informations de culture pour le thread actuel.

Vous ne pouvez pas créer une instance de cette classe.

Propriétés

Nom Description
AllowQuit

Obtient une valeur indiquant si l’appelant peut quitter cette application.

CommonAppDataPath

Obtient le chemin d’accès des données d’application partagées entre tous les utilisateurs.

CommonAppDataRegistry

Obtient la clé de Registre pour les données d’application partagées entre tous les utilisateurs.

CompanyName

Obtient le nom de la société associé à l’application.

CurrentCulture

Obtient ou définit les informations de culture pour le thread actuel.

CurrentInputLanguage

Obtient ou définit la langue d’entrée actuelle pour le thread actuel.

ExecutablePath

Obtient le chemin du fichier exécutable qui a démarré l’application, y compris le nom de l’exécutable.

LocalUserAppDataPath

Obtient le chemin d’accès pour les données d’application d’un utilisateur local et non itinérant.

MessageLoop

Obtient une valeur indiquant si une boucle de message existe sur ce thread.

OpenForms

Obtient une collection de formulaires ouverts appartenant à l’application.

ProductName

Obtient le nom du produit associé à cette application.

ProductVersion

Obtient la version du produit associée à cette application.

RenderWithVisualStyles

Obtient une valeur spécifiant si l’application actuelle dessine des contrôles avec des styles visuels.

SafeTopLevelCaptionFormat

Obtient ou définit la chaîne de format à appliquer aux légendes de fenêtre de niveau supérieur lorsqu’elles sont affichées avec une bannière d’avertissement.

StartupPath

Obtient le chemin du fichier exécutable qui a démarré l’application, sans inclure le nom exécutable.

UserAppDataPath

Obtient le chemin d’accès pour les données d’application d’un utilisateur.

UserAppDataRegistry

Obtient la clé de Registre pour les données d’application d’un utilisateur.

UseWaitCursor

Obtient ou définit si le curseur d’attente est utilisé pour toutes les formes ouvertes de l’application.

VisualStyleState

Obtient une valeur qui spécifie comment les styles visuels sont appliqués aux fenêtres d’application.

Méthodes

Nom Description
AddMessageFilter(IMessageFilter)

Ajoute un filtre de messages pour surveiller Windows messages au fur et à mesure qu’ils sont routés vers leurs destinations.

DoEvents()

Traite tous les messages Windows actuellement dans la file d’attente des messages.

EnableVisualStyles()

Active les styles visuels de l’application.

Equals(Object)

Détermine si l’objet spécifié est égal à l’objet actuel.

(Hérité de Object)
Exit()

Informe toutes les pompes de messages qu’elles doivent arrêter, puis ferme toutes les fenêtres d’application une fois les messages traités.

Exit(CancelEventArgs)

Informe toutes les pompes de messages qu’elles doivent arrêter, puis ferme toutes les fenêtres d’application une fois les messages traités.

ExitThread()

Quitte la boucle de message sur le thread actuel et ferme toutes les fenêtres du thread.

FilterMessage(Message)

Exécute tous les filtres sur un message de fenêtre et retourne une copie du message modifié.

GetHashCode()

Sert de fonction de hachage par défaut.

(Hérité de Object)
GetType()

Obtient la Type de l’instance actuelle.

(Hérité de Object)
MemberwiseClone()

Crée une copie superficielle du Objectactuel.

(Hérité de Object)
OleRequired()

Initialise OLE sur le thread actuel.

OnThreadException(Exception)

Déclenche l’événement ThreadException.

RaiseIdle(EventArgs)

Déclenche l’événement Idle dans les scénarios hébergés.

RegisterMessageLoop(Application+MessageLoopCallback)

Inscrit un rappel pour vérifier si la boucle de message s’exécute dans des environnements hébergés.

RemoveMessageFilter(IMessageFilter)

Supprime un filtre de message de la pompe de messages de l’application.

Restart()

Arrête l’application et démarre immédiatement une nouvelle instance.

Run()

Commence à exécuter une boucle de message d’application standard sur le thread actuel, sans formulaire.

Run(ApplicationContext)

Commence à exécuter une boucle de message d’application standard sur le thread actuel, avec un ApplicationContext.

Run(Form)

Commence à exécuter une boucle de message d’application standard sur le thread actuel et rend le formulaire spécifié visible.

SetCompatibleTextRenderingDefault(Boolean)

Définit la valeur par défaut à l’échelle de l’application pour la UseCompatibleTextRendering propriété définie sur certains contrôles.

SetSuspendState(PowerState, Boolean, Boolean)

Suspend ou met en veille prolongée le système, ou demande que le système soit suspendu ou hiberné.

SetUnhandledExceptionMode(UnhandledExceptionMode, Boolean)

Indique à l’application comment répondre aux exceptions non gérées, en appliquant éventuellement un comportement spécifique au thread.

SetUnhandledExceptionMode(UnhandledExceptionMode)

Indique à l’application comment répondre aux exceptions non gérées.

ToString()

Retourne une chaîne qui représente l’objet actuel.

(Hérité de Object)
UnregisterMessageLoop()

Annule l’inscription du rappel de boucle de message effectué avec RegisterMessageLoop(Application+MessageLoopCallback).

Événements

Nom Description
ApplicationExit

Se produit lorsque l’application est sur le point d’arrêter.

EnterThreadModal

Se produit lorsque l’application est sur le point d’entrer un état modal.

Idle

Se produit lorsque l’application termine le traitement et est sur le point d’entrer dans l’état inactif.

LeaveThreadModal

Se produit lorsque l’application est sur le point de quitter un état modal.

ThreadException

Se produit lorsqu’une exception de thread non trachée est levée.

ThreadExit

Se produit lorsqu’un thread est sur le point d’arrêter. Lorsque le thread principal d’une application est sur le point d’être arrêté, cet événement est déclenché en premier, suivi d’un ApplicationExit événement.

S’applique à