Wenn ein Dialogfeld verwenden

Die meisten Anwendungen verwenden Dialogfelder aufgefordert Weitere Informationen für Befehle, die Benutzereingaben erfordern. Mithilfe eines Dialogfelds ist die einzige Empfohlene Vorgehensweise für eine Anwendung, die Eingabe abzurufen. Beispielsweise erfordert der Datei öffnen-Befehl den Namen einer Datei zu öffnen, so dass eine Anwendung ein Dialogfeld verwenden sollte, um den Benutzer für den Namen. In diesem Fall erstellt die Anwendung das Dialogfeld, wenn der Benutzer den Befehl wählt und das Dialogfeld zerstört sofort, nachdem der Benutzer die Informationen liefert.

Viele Anwendungen verwenden auch Dialogfelder, um Informationen oder Optionen angezeigt, während der Benutzer in einem anderen Fenster funktioniert. Beispielsweise verwenden Textverarbeitungsprogramme oft ein Dialogfeld mit einem Text-suchen-Befehl. Während die Anwendung nach Text sucht, bleibt das Dialogfeld auf dem Bildschirm. Der Benutzer kann dann auf das Dialogfeld und suchen das gleiche Wort wieder zurück; oder der Benutzer kann den Eintrag in das Dialogfeld und suchen ein neues Wort ändern. Anwendungen, dass Verwenden von Dialogfeldern auf diese Weise in der Regel eine erstellen, wenn der Benutzer einen Befehl auswählt und es anzeigen für, solange die Anwendung ausgeführt wird oder bis der Benutzer explizit das Dialogfeld schließt weiterhin.

Um die verschiedenen Möglichkeiten unterstützen Anwendungen mit Dialogfeldern, die Win32-API stellt zwei Typen von Dialogfeld: modale und nicht modale. Ein modales Dialogfeld fordert den Benutzer auf Auskunft oder das Dialogfeld abbrechen, bevor die Anwendung fortgesetzt. Anwendungen verwenden modale Dialogfelder in Verbindung mit Befehlen, die zusätzliche Informationen benötigen, bevor sie fortfahren können. Ein nicht modales Dialogfeld ermöglicht dem Benutzer Informationen und zurück zu der vorherigen Aufgabe ohne das Dialogfeld zu schließen. Modale Dialogfelder sind einfacher zu verwalten als nicht modales Dialogfeld Boxen weil sie erstellt wurden, führen Sie ihre Aufgabe und werden zerstört durch eine einzelne Funktion aufrufen.

Entweder erstellen muss ein modales oder nicht modales Dialogfeld, eine Anwendung eine Dialogfeld Feld Vorlage, um das Dialogfeld Feld Stil und Inhalt beschreiben bereitstellen; die Anwendung muss auch eine Dialogfeldprozedur Aufgaben bereitstellen. Das Dialogfeld Feld Vorlage ist eine binäre Beschreibung des Dialogfelds und der darin enthaltenen Steuerelemente. Entwickler kann diese Vorlage als eine Ressource aus der ausführbaren Datei der Anwendung geladen werden soll, oder im Speicher erstellt, während die Anwendung ausgeführt wird. Das Dialogfeld im Feld Prozedur ist eine anwendungsdefinierte Rückruffunktion, die das System anruft, wenn es Eingang hat für das Dialogfeld oder Aufgaben für das Dialogfeld durchzuführen. Obwohl eine Dialogfeld im Feld Prozedur einer Fensterprozedur ähnlich ist, muss es nicht die gleiche Verantwortung.

Eine Anwendung erstellt ein Dialogfeld in der Regel mithilfe der DialogBox oder "createDialog" -Funktion. DialogBox wird ein modales Dialogfeld erstellt; CreateDialog erstellt ein nicht modales Dialogfeld. Diese beiden Funktionen eine Dialogfeldvorlage aus der ausführbaren Datei der Anwendung laden und erstellen ein Popupfenster, das die Vorlage-Spezifikationen entspricht. Gibt es andere Funktionen, die ein Dialogfeld erstellen, mithilfe von Vorlagen im Arbeitsspeicher; Sie übergeben Weitere Informationen an die Dialogfeldprozedur, wie das Dialogfeld erstellt wird.

Dialogfelder gehören in der Regel eine vordefinierte, exklusive Fenster-Klasse. Das System verwendet dieses Window-Klasse und ihre entsprechenden Fensterprozedur für beide modale und nicht modale Dialogfelder. Wenn die Funktion aufgerufen wird, wird das Fenster für das Dialogfeld sowie die Fenster für die Steuerelemente im Dialogfeld erstellt, dann sendet ausgewählte Nachrichten an die Dialogfeldprozedur. Während das Dialogfeld angezeigt wird, verwaltet die vordefinierten Fensterprozedur alle Nachrichten, einige Nachrichten verarbeiten und andere an das Dialogfeld im Feld Prozedur übergeben, damit die Prozedur Aufgaben durchführen kann. Anwendungen keinen direkten Zugriff auf die vordefinierten Window-Klasse oder die Fensterprozedur, aber sie können das Dialogfeld Feld Vorlage und Dialogfeldprozedur die Stil und Verhalten eines Dialogfelds ändern.

Index