Teilen über


Dialogfelder (Dialogfelder)

Ein Dialogfeld ist ein temporäres Fenster, das eine Anwendung zum Abrufen von Benutzereingaben erstellt. Eine Anwendung verwendet in der Regel Dialogfelder, um den Benutzer zur Eingabe zusätzlicher Informationen für Menüelemente aufzufordern. Ein Dialogfeld enthält in der Regel ein oder mehrere Steuerelemente (untergeordnete Fenster), mit denen der Benutzer Text eingibt, Optionen auswäht oder die Aktion leitet.

Windows bietet auch vordefinierte Dialogfelder, die allgemeine Menüelemente wie Öffnen und Druckenunterstützen. Anwendungen, die diese Menüelemente verwenden, sollten die allgemeinen Dialogfelder verwenden, um diese Benutzereingabe unabhängig vom Anwendungstyp aufzufordern.

In diesem Abschnitt

Name Beschreibung
zu Dialogfeldern Erläutert die Verwendung von Dialogfeldern auf der Benutzeroberfläche für Ihre Anwendungen.
Überlegungen zur Programmierung des Dialogfelds In dieser Übersicht werden einige Programmierüberlegungen in Bezug auf Dialogfelder erläutert.
Verwenden von Dialogfeldern Sie verwenden Dialogfelder, um Informationen anzuzeigen und eingaben vom Benutzer aufzufordern.
Dialogfeldreferenz Api-Referenz
allgemeine Dialogfeldbibliothek Erläutert die Verwendung der allgemeinen Dialogfelder auf der Benutzeroberfläche für Ihre Anwendungen.

Dialogfeldfunktionen

Name Beschreibung
CreateDialog- Erstellt ein Dialogfeld ohne Modus aus einer Ressourcenressource für Dialogfeldvorlagen.
CreateDialogIndirect- Erstellt ein Dialogfeld ohne Modus aus einer Dialogfeldvorlage im Arbeitsspeicher.
CreateDialogIndirectParam- Erstellt ein Dialogfeld ohne Modus aus einer Dialogfeldvorlage im Arbeitsspeicher. Vor dem Anzeigen des Dialogfelds übergibt die Funktion einen anwendungsdefinierten Wert als lParam Parameter der WM_INITDIALOG Nachricht an die Dialogfeldprozedur. Eine Anwendung kann diesen Wert verwenden, um Dialogfeld-Steuerelemente zu initialisieren.
CreateDialogParam- Erstellt ein Dialogfeld ohne Modus aus einer Ressourcenressource für Dialogfeldvorlagen. Vor dem Anzeigen des Dialogfelds übergibt die Funktion einen anwendungsdefinierten Wert als lParam Parameter der WM_INITDIALOG Nachricht an die Dialogfeldprozedur. Eine Anwendung kann diesen Wert verwenden, um Dialogfeld-Steuerelemente zu initialisieren.
DefDlgProc- Ruft die Standardfensterprozedur des Dialogfelds auf, um die Standardverarbeitung für alle Fenstermeldungen bereitzustellen, die ein Dialogfeld mit einer privaten Fensterklasse nicht verarbeitet.
DialogBox- Erstellt ein modales Dialogfeld aus einer Ressourcenressource für Dialogfeldvorlagen. DialogBox- gibt erst die Steuerung zurück, wenn die angegebene Rückruffunktion das modale Dialogfeld beendet, indem die funktion EndDialog aufgerufen wird.
DialogBoxIndirect- Erstellt ein modales Dialogfeld aus einer Dialogfeldvorlage im Arbeitsspeicher. DialogBoxIndirect- gibt erst die Steuerung zurück, wenn die angegebene Rückruffunktion das modale Dialogfeld beendet, indem die EndDialog-Funktion aufgerufen wird.
DialogBoxIndirectParam- Erstellt ein modales Dialogfeld aus einer Dialogfeldvorlage im Arbeitsspeicher. Vor dem Anzeigen des Dialogfelds übergibt die Funktion einen anwendungsdefinierten Wert als lParam Parameter der WM_INITDIALOG Nachricht an die Dialogfeldprozedur. Eine Anwendung kann diesen Wert verwenden, um Dialogfeld-Steuerelemente zu initialisieren.
DialogBoxParam- Erstellt ein modales Dialogfeld aus einer Ressourcenressource für Dialogfeldvorlagen. Vor dem Anzeigen des Dialogfelds übergibt die Funktion einen anwendungsdefinierten Wert als lParam Parameter der WM_INITDIALOG Nachricht an die Dialogfeldprozedur. Eine Anwendung kann diesen Wert verwenden, um Dialogfeld-Steuerelemente zu initialisieren.
DialogProc- Eine anwendungsdefinierte Rückruffunktion, die mit der CreateDialog- und DialogBox- Funktionsfamilien verwendet wird. Es verarbeitet Nachrichten, die an ein modales oder modusloses Dialogfeld gesendet werden. Der DLGPROC- Typ definiert einen Zeiger auf diese Rückruffunktion. DialogProc- ist ein Platzhalter für den anwendungsdefinierte Funktionsnamen.
EndDialog- Zerstört ein modales Dialogfeld, wodurch das System die Verarbeitung des Dialogfelds beendet.
GetDialogBaseUnits- Ruft die Dialogbasiseinheiten des Systems ab, bei denen es sich um die durchschnittliche Breite und Höhe von Zeichen in der Systemschriftart handelt. Für Dialogfelder, die die Systemschriftart verwenden, können Sie diese Werte verwenden, um zwischen Dialogfeldvorlageneinheiten, wie in Dialogfeldvorlagen und Pixeln angegeben, zu konvertieren. Bei Dialogfeldern, die die Systemschriftart nicht verwenden, hängt die Konvertierung von Dialogfeldvorlageneinheiten in Pixel von der vom Dialogfeld verwendeten Schriftart ab.
GetDlgCtrlID- Ruft den Bezeichner des angegebenen Steuerelements ab.
GetDlgItem- Ruft ein Handle zu einem Steuerelement im angegebenen Dialogfeld ab.
GetDlgItemInt- Übersetzt den Text eines angegebenen Steuerelements in einem Dialogfeld in einen ganzzahligen Wert.
GetDlgItemText- Ruft den Titel oder Text ab, der einem Steuerelement in einem Dialogfeld zugeordnet ist.
GetNextDlgGroupItem- Ruft ein Handle zum ersten Steuerelement in einer Gruppe von Steuerelementen ab, die dem angegebenen Steuerelement in einem Dialogfeld vorangestellt (oder folgt).
GetNextDlgTabItem- Ruft ein Handle für das erste Steuerelement ab, das die WS_TABSTOP Formatvorlage aufweist, die dem angegebenen Steuerelement vorausgeht (oder folgt).
IsDialogMessage- Bestimmt, ob eine Nachricht für das angegebene Dialogfeld vorgesehen ist und ggf. die Nachricht verarbeitet.
MapDialogRect- Konvertiert die angegebenen Dialogfeldeinheiten in Bildschirmeinheiten (Pixel). Die Funktion ersetzt die Koordinaten in der angegebenen RECT- Struktur durch die konvertierten Koordinaten, wodurch die Struktur verwendet werden kann, um ein Dialogfeld zu erstellen oder ein Steuerelement innerhalb eines Dialogfelds zu positionieren.
MessageBox- Zeigt ein modales Dialogfeld an, das ein Systemsymbol, eine Reihe von Schaltflächen und eine kurze anwendungsspezifische Meldung enthält, z. B. Status- oder Fehlerinformationen. Das Meldungsfeld gibt einen ganzzahligen Wert zurück, der angibt, auf welche Schaltfläche der Benutzer geklickt hat.
MessageBoxEx- Erstellt, zeigt und betreibt ein Meldungsfeld. Das Meldungsfeld enthält eine anwendungsdefinierte Nachricht und einen Titel sowie eine beliebige Kombination von vordefinierten Symbolen und Pushtasten. Die Schaltflächen befinden sich in der Sprache der System-Benutzeroberfläche.
MessageBoxIndirect- Erstellt, zeigt und betreibt ein Meldungsfeld. Das Meldungsfeld enthält anwendungsdefinierten Nachrichtentext und -titel, ein beliebiges Symbol und eine beliebige Kombination vordefinierter Pushtasten.
SendDlgItemMessage- Sendet eine Nachricht an das angegebene Steuerelement in einem Dialogfeld.
SetDlgItemInt- Legt den Text eines Steuerelements in einem Dialogfeld auf die Zeichenfolgendarstellung eines angegebenen ganzzahligen Werts fest.
SetDlgItemText- Legt den Titel oder Text eines Steuerelements in einem Dialogfeld fest.

Dialogfeldnachrichten

Name Beschreibung
DM_GETDEFID Ruft den Bezeichner des Standard-Knopfdruck-Steuerelements für ein Dialogfeld ab.
DM_REPOSITION Positioniert ein Dialogfeld auf oberster Ebene so, dass es in den Desktopbereich passt. Eine Anwendung kann diese Nachricht nach dem Ändern der Größe an ein Dialogfeld senden, um sicherzustellen, dass das gesamte Dialogfeld sichtbar bleibt.
DM_SETDEFID Ändert den Bezeichner der Standard-Knopfdruckschaltfläche für ein Dialogfeld.

Dialogfeldbenachrichtigungen

Name Beschreibung
WM_CTLCOLORDLG Wird an ein Dialogfeld gesendet, bevor das System das Dialogfeld zeichnet. Durch Reaktion auf diese Meldung kann das Dialogfeld seine Text- und Hintergrundfarben mithilfe des angegebenen Anzeigegerätekontextziehpunkts festlegen.
WM_ENTERIDLE Wird an das Besitzerfenster eines modalen Dialogfelds oder Menüs gesendet, das in den Leerlaufzustand wechselt. Ein modales Dialogfeld oder Menü wechselt in den Leerlaufzustand, wenn keine Nachrichten in der Warteschlange warten, nachdem eine oder mehrere vorherige Nachrichten verarbeitet wurden.
WM_GETDLGCODE Wird an die Fensterprozedur gesendet, die einem Steuerelement zugeordnet ist. Standardmäßig behandelt das System alle Tastatureingaben für das Steuerelement. Das System interpretiert bestimmte Arten von Tastatureingaben als Navigationstasten für Dialogfelder. Um dieses Standardverhalten außer Kraft zu setzen, kann das Steuerelement auf die WM_GETDLGCODE Nachricht reagieren, um die Eingabetypen anzugeben, die er selbst verarbeiten möchte.
WM_INITDIALOG Wird unmittelbar vor der Anzeige eines Dialogfelds an die Dialogfeldprozedur gesendet. Dialogfeldprozeduren verwenden diese Meldung in der Regel, um Steuerelemente zu initialisieren und andere Initialisierungsaufgaben auszuführen, die sich auf die Darstellung des Dialogfelds auswirken.
WM_NEXTDLGCTL Wird an eine Dialogfeldprozedur gesendet, um den Tastaturfokus auf ein anderes Steuerelement im Dialogfeld festzulegen.

Dialogfeldstrukturen

Name Beschreibung
DLGITEMTEMPLATE- Definiert die Abmessungen und das Format eines Steuerelements in einem Dialogfeld. Eine oder mehrere dieser Strukturen werden mit einer DLGTEMPLATE- Struktur kombiniert, um eine Standardvorlage für ein Dialogfeld zu bilden.
DLGITEMTEMPLATEEX Beschreibt ein erweitertes Dialogfeld. Eine Beschreibung des Formats einer erweiterten Dialogfeldvorlage finden Sie unter DLGTEMPLATEEX.
DLGTEMPLATE- Definiert die Abmessungen und das Format eines Dialogfelds. Diese Struktur, immer der erste in einer Standardvorlage für ein Dialogfeld, gibt auch die Anzahl der Steuerelemente im Dialogfeld an und gibt daher die Anzahl der nachfolgenden DLGITEMTEMPLATE- Strukturen in der Vorlage an.
DLGTEMPLATEEX- Eine erweiterte Dialogfeldvorlage beginnt mit einer DLGTEMPLATEEX Kopfzeile, die das Dialogfeld beschreibt und die Anzahl der Steuerelemente im Dialogfeld angibt. Für jedes Steuerelement in einem Dialogfeld verfügt eine Vorlage für ein erweitertes Dialogfeld über einen Datenblock, der das DLGITEMTEMPLATEEX- Format zum Beschreiben des Steuerelements verwendet.
MSGBOXPARAMS- Enthält Informationen zum Anzeigen eines Meldungsfelds. Die MessageBoxIndirect--Funktion verwendet diese Struktur.