Application Klasse
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Stellt static Methoden und Eigenschaften zum Verwalten einer Anwendung bereit, z. B. Methoden zum Starten und Beenden einer Anwendung, zum Verarbeiten Windows Nachrichten und Eigenschaften zum Abrufen von Informationen zu einer Anwendung. Diese Klasse kann nicht vererbt werden.
public ref class Application sealed
public sealed class Application
type Application = class
Public NotInheritable Class Application
- Vererbung
-
Application
Beispiele
Im folgenden Codebeispiel werden Zahlen in einem Listenfeld in einem Formular aufgelistet. Jedes Mal, wenn Sie darauf klicken button1, fügt die Anwendung der Liste eine weitere Nummer hinzu.
Die Main Methode ruft Run auf, um die Anwendung zu starten, die das Formular erstellt, listBox1 und button1. Wenn der Benutzer klickt button1, zeigt die button1_Click Methode eine MessageBox. Wenn der Benutzer auf die MessageBoxSchaltfläche klicktNo, fügt die button1_Click Methode der Liste eine Zahl hinzu. Wenn der Benutzer klickt Yes, wird die Anwendung aufgerufen Exit , um alle verbleibenden Nachrichten in der Warteschlange zu verarbeiten und dann zu beenden.
Note
Der Aufruf schlägt Exit bei teilweiser Vertrauensstellung fehl.
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
Hinweise
Die klasse Application verfügt über Methoden zum Starten und Beenden von Anwendungen und Threads sowie zum Verarbeiten Windows Nachrichten wie folgt:
Run startet eine Anwendungsmeldungsschleife im aktuellen Thread und macht optional ein Formular sichtbar.
Exit oder ExitThread stoppt eine Nachrichtenschleife.
DoEvents verarbeitet Nachrichten, während sich Ihr Programm in einer Schleife befindet.
AddMessageFilter fügt der Anwendungsnachrichtenpumpe einen Nachrichtenfilter hinzu, um Windows Nachrichten zu überwachen.
IMessageFilter Sie können verhindern, dass ein Ereignis ausgelöst oder spezielle Vorgänge ausgeführt wird, bevor Sie einen Ereignishandler aufrufen.
Diese Klasse hat CurrentCulture und CurrentInputLanguage Eigenschaften, um Kulturinformationen für den aktuellen Thread abzurufen oder festzulegen.
Sie können keine Instanz dieser Klasse erstellen.
Eigenschaften
| Name | Beschreibung |
|---|---|
| AllowQuit |
Ruft einen Wert ab, der angibt, ob der Aufrufer diese Anwendung beenden kann. |
| CommonAppDataPath |
Ruft den Pfad für die Anwendungsdaten ab, die für alle Benutzer freigegeben werden. |
| CommonAppDataRegistry |
Ruft den Registrierungsschlüssel für die Anwendungsdaten ab, die für alle Benutzer freigegeben sind. |
| CompanyName |
Ruft den Firmennamen ab, der der Anwendung zugeordnet ist. |
| CurrentCulture |
Dient zum Abrufen oder Festlegen der Kulturinformationen für den aktuellen Thread. |
| CurrentInputLanguage |
Ruft die aktuelle Eingabesprache für den aktuellen Thread ab oder legt sie fest. |
| ExecutablePath |
Ruft den Pfad für die ausführbare Datei ab, die die Anwendung gestartet hat, einschließlich des dateinamens. |
| LocalUserAppDataPath |
Ruft den Pfad für die Anwendungsdaten eines lokalen, nicht roamingbasierten Benutzers ab. |
| MessageLoop |
Ruft einen Wert ab, der angibt, ob eine Nachrichtenschleife in diesem Thread vorhanden ist. |
| OpenForms |
Ruft eine Auflistung von geöffneten Formularen ab, die der Anwendung gehören. |
| ProductName |
Ruft den Produktnamen ab, der dieser Anwendung zugeordnet ist. |
| ProductVersion |
Ruft die Produktversion ab, die dieser Anwendung zugeordnet ist. |
| RenderWithVisualStyles |
Ruft einen Wert ab, der angibt, ob es sich bei der aktuellen Anwendung um Zeichnungssteuerelemente mit visuellen Formatvorlagen handelt. |
| SafeTopLevelCaptionFormat |
Ruft die Formatzeichenfolge ab, die auf Beschriftungen der obersten Ebene angewendet werden soll, wenn sie mit einem Warnbanner angezeigt werden, oder legt diese fest. |
| StartupPath |
Ruft den Pfad für die ausführbare Datei ab, die die Anwendung gestartet hat, nicht einschließlich des dateinamens. |
| UserAppDataPath |
Ruft den Pfad für die Anwendungsdaten eines Benutzers ab. |
| UserAppDataRegistry |
Ruft den Registrierungsschlüssel für die Anwendungsdaten eines Benutzers ab. |
| UseWaitCursor |
Ruft ab oder legt fest, ob der Wartecursor für alle geöffneten Formulare der Anwendung verwendet wird. |
| VisualStyleState |
Ruft einen Wert ab, der angibt, wie visuelle Formatvorlagen auf Anwendungsfenster angewendet werden. |
Methoden
| Name | Beschreibung |
|---|---|
| AddMessageFilter(IMessageFilter) |
Fügt einen Nachrichtenfilter hinzu, um Windows Nachrichten zu überwachen, während sie an ihre Ziele weitergeleitet werden. |
| DoEvents() |
Verarbeitet alle Windows Nachrichten, die sich derzeit in der Nachrichtenwarteschlange befinden. |
| EnableVisualStyles() |
Aktiviert visuelle Formatvorlagen für die Anwendung. |
| Equals(Object) |
Bestimmt, ob das angegebene Objekt gleich dem aktuellen Objekt ist. (Geerbt von Object) |
| Exit() |
Informiert alle Nachrichtenpumpen, dass sie beendet werden müssen, und schließt dann alle Anwendungsfenster, nachdem die Nachrichten verarbeitet wurden. |
| Exit(CancelEventArgs) |
Informiert alle Nachrichtenpumpen, dass sie beendet werden müssen, und schließt dann alle Anwendungsfenster, nachdem die Nachrichten verarbeitet wurden. |
| ExitThread() |
Beendet die Nachrichtenschleife im aktuellen Thread und schließt alle Fenster im Thread. |
| FilterMessage(Message) |
Führt alle Filter für eine Fenstermeldung aus und gibt eine Kopie der geänderten Nachricht zurück. |
| GetHashCode() |
Dient als Standardhashfunktion. (Geerbt von Object) |
| GetType() |
Ruft die Type der aktuellen Instanz ab. (Geerbt von Object) |
| MemberwiseClone() |
Erstellt eine flache Kopie der aktuellen Object. (Geerbt von Object) |
| OleRequired() |
Initialisiert OLE im aktuellen Thread. |
| OnThreadException(Exception) |
Löst das ThreadException-Ereignis aus. |
| RaiseIdle(EventArgs) |
Löst das Idle Ereignis in gehosteten Szenarien aus. |
| RegisterMessageLoop(Application+MessageLoopCallback) |
Registriert einen Rückruf, um zu überprüfen, ob die Nachrichtenschleife in gehosteten Umgebungen ausgeführt wird. |
| RemoveMessageFilter(IMessageFilter) |
Entfernt einen Nachrichtenfilter aus der Nachrichtenpumpe der Anwendung. |
| Restart() |
Beendet die Anwendung und startet sofort eine neue Instanz. |
| Run() |
Beginnt mit der Ausführung einer standardanwendungsnachrichtenschleife im aktuellen Thread, ohne dass ein Formular vorhanden ist. |
| Run(ApplicationContext) |
Beginnt mit der Ausführung einer standardanwendungsnachrichtenschleife im aktuellen Thread mit einer ApplicationContext. |
| Run(Form) |
Beginnt mit der Ausführung einer standardanwendungsnachrichtenschleife im aktuellen Thread und macht das angegebene Formular sichtbar. |
| SetCompatibleTextRenderingDefault(Boolean) |
Legt den anwendungsweiten Standardwert für die eigenschaft fest, die |
| SetSuspendState(PowerState, Boolean, Boolean) |
Hält das System an oder ruht das System oder fordert an, dass das System angehalten oder ruhet. |
| SetUnhandledExceptionMode(UnhandledExceptionMode, Boolean) |
Weist die Anwendung an, wie sie auf unbehandelte Ausnahmen reagiert, optional das threadspezifische Verhalten anwenden. |
| SetUnhandledExceptionMode(UnhandledExceptionMode) |
Weist die Anwendung an, wie sie auf unbehandelte Ausnahmen reagiert. |
| ToString() |
Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt. (Geerbt von Object) |
| UnregisterMessageLoop() |
Hebt die Registrierung des Nachrichtenschleifenrückrufs auf, der mit RegisterMessageLoop(Application+MessageLoopCallback). |
Ereignisse
| Name | Beschreibung |
|---|---|
| ApplicationExit |
Tritt auf, wenn die Anwendung beendet werden soll. |
| EnterThreadModal |
Tritt auf, wenn die Anwendung in einen modalen Zustand wechselt. |
| Idle |
Tritt auf, wenn die Anwendung die Verarbeitung beendet hat und in den Leerlaufzustand wechselt. |
| LeaveThreadModal |
Tritt auf, wenn die Anwendung in der Lage ist, einen modalen Zustand zu verlassen. |
| ThreadException |
Tritt auf, wenn eine nicht abgefangene Thread-Ausnahme ausgelöst wird. |
| ThreadExit |
Tritt auf, wenn ein Thread beendet werden soll. Wenn der Hauptthread für eine Anwendung beendet werden soll, wird dieses Ereignis zuerst ausgelöst, gefolgt von einem ApplicationExit Ereignis. |