Condividi tramite


Application.Exit Metodo

Definizione

Indica a tutti i message pump di terminare l'esecuzione, quindi, una volta elaborati i messaggi, chiude tutte le finestre dell'applicazione.

Overload

Exit()

Indica a tutti i message pump di terminare l'esecuzione, quindi, una volta elaborati i messaggi, chiude tutte le finestre dell'applicazione.

Exit(CancelEventArgs)

Indica a tutti i message pump di terminare l'esecuzione, quindi, una volta elaborati i messaggi, chiude tutte le finestre dell'applicazione.

Exit()

Indica a tutti i message pump di terminare l'esecuzione, quindi, una volta elaborati i messaggi, chiude tutte le finestre dell'applicazione.

public:
 static void Exit();
public static void Exit ();
static member Exit : unit -> unit
Public Shared Sub Exit ()

Esempio

L'esempio di codice seguente elenca i numeri in una casella di riepilogo in un modulo. Ogni volta che si fa clic su button1, l'applicazione aggiunge un altro numero all'elenco.

Il Main metodo chiama Run per avviare l'applicazione, che crea il modulo, listBox1e button1. Quando l'utente fa clic su button1, il button1_Click metodo aggiunge numeri uno a tre alla casella di riepilogo e visualizza un MessageBoxoggetto . Se l'utente fa clic su No sul MessageBoxmetodo , il button1_Click metodo aggiunge un altro numero all'elenco. Se l'utente fa clic su , l'applicazione chiama Exit, per elaborare tutti i messaggi rimanenti nella coda e quindi uscire.

L'esempio richiede che listBox1 sia stata creata un'istanza e button1 inserita in un modulo.

public:
   static void main()
   {
      // Starts the application.
      Application::Run( gcnew Form1 );
   }

private:
   void button1_Click( Object^ sender, System::EventArgs^ e )
   {
      // Populates a list box with three numbers.
      int i = 3;
      for ( int j = 1; j <= i; j++ )
      {
         listBox1->Items->Add( j );
      }
      
      /* Determines whether the user wants to exit the application.
       * If not, adds another number to the list box. */
      while ( MessageBox::Show( "Exit application?", "",
         MessageBoxButtons::YesNo ) == ::DialogResult::No )
      {
         // Increments the counter ands add the number to the list box.
         i++;
         listBox1->Items->Add( i );
      }
      
      // The user wants to exit the application. Close everything down.
      Application::Exit();
   }
public static void Main(string[] args) {
    // Starts the application.
    Application.Run(new Form1());
 }

 private void button1_Click(object sender, System.EventArgs e) {
    // Populates a list box with three numbers.
    int i = 3;
    for(int j=1; j<=i; j++) {
       listBox1.Items.Add(j);
    }

    /* Determines whether the user wants to exit the application.
     * If not, adds another number to the list box. */
    while (MessageBox.Show("Exit application?", "", MessageBoxButtons.YesNo) ==
       DialogResult.No) {
       // Increments the counter ands add the number to the list box.
       i++;
       listBox1.Items.Add(i);
    }

    // The user wants to exit the application. Close everything down.
    Application.Exit();
 }
<STAThread()> _
Shared Sub Main() 	
   ' Starts the application.
   Application.Run(New Form1())
End Sub

Private Sub button1_Click(sender As object, e As System.EventArgs)
   ' Populates a list box with three numbers.
   Dim i As Integer = 3
   Dim j As Integer
   For j = 1 To i - 1
      listBox1.Items.Add(j)
   Next

   ' Checks to see whether the user wants to exit the application.
   ' If not, adds another number to the list box.
   While (MessageBox.Show("Exit application?", "", MessageBoxButtons.YesNo) = _ 
      DialogResult.No)
      ' Increments the counter and adds the number to the list box.
      i = i + 1
      listBox1.Items.Add(i)
   End While

   ' The user wants to exit the application. Close everything down.
   Application.Exit()
End Sub

Commenti

Il Exit metodo arresta tutti i cicli di messaggi in esecuzione in tutti i thread e chiude tutte le finestre dell'applicazione. Questo metodo non forza necessariamente l'uscita dell'applicazione. Il Exit metodo viene in genere chiamato dall'interno di un ciclo di messaggi e forza Run di restituire. Per uscire da un ciclo di messaggi solo per il thread corrente, chiamare ExitThread.

Exit genera gli eventi seguenti ed esegue le azioni condizionali associate:

  • Viene generato un FormClosing evento per ogni modulo rappresentato dalla OpenForms proprietà . Questo evento può essere annullato impostando la Cancel proprietà del FormClosingEventArgs parametro su true.

  • Se uno degli altri gestori annulla l'evento, restituisce Exit senza ulteriori azioni. In caso contrario, viene generato un FormClosed evento per ogni modulo aperto, quindi tutti i cicli di messaggi in esecuzione e i moduli vengono chiusi.

Nota

Il Exit metodo non genera gli Closed eventi e Closing , che sono obsoleti a partire da .NET Framework 2.0.

Vedi anche

Si applica a

Exit(CancelEventArgs)

Indica a tutti i message pump di terminare l'esecuzione, quindi, una volta elaborati i messaggi, chiude tutte le finestre dell'applicazione.

public:
 static void Exit(System::ComponentModel::CancelEventArgs ^ e);
public static void Exit (System.ComponentModel.CancelEventArgs e);
public static void Exit (System.ComponentModel.CancelEventArgs? e);
static member Exit : System.ComponentModel.CancelEventArgs -> unit
Public Shared Sub Exit (e As CancelEventArgs)

Parametri

e
CancelEventArgs

Restituisce un valore che indica se l'uscita è stata annullata da un oggetto Form qualsiasi all'interno dell'applicazione.

Vedi anche

Si applica a