Dialogfeldprozedur

Eine Dialogfeld im Feld Prozedur ähnelt einer Fensterprozedur, dass das System Nachrichten an die Prozedur sendet, wenn es die Information zu geben oder Aufgaben durchzuführen. Im Gegensatz zu einer Fensterprozedur Ruft eine Dialogfeld im Feld Prozedur nie die DefWindowProc -Funktion. Stattdessen gibt es den booleschen Wert TRUE zurück, wenn es verarbeitet eine Nachricht oder FALSE, wenn dies nicht der Fall.

Jedes Dialogfeld im Feld Prozedur hat folgende form:

BOOL APIENTRY DlgProc (HwndDlg, Message, wParam, lParam) HWND HwndDlg; 
UINT Message; 
WPARAM wParam; 
LPARAM lParam; 
{Switch (Message) {/ / Ort Nachricht Fälle hier. 
 
        Standard: return FALSE; 
    } 
} 

 

Die Parameter der Prozedur dienen dem gleichen Zweck wie in einer Fensterprozedur, mit dem HwndDlg -Parameter empfängt das Fensterhandle des Dialogfelds.

Die meisten Dialogfeld Feld Verfahren verarbeiten die WM_INITDIALOG -Meldung und die WM_COMMAND -Nachrichten von den Steuerelementen gesendet, aber in kaum einer anderen Nachrichten verarbeiten. Wenn eine Dialogfeld im Feld Prozedur eine Nachricht nicht verarbeitet, muss sie FALSE, um das System zum Verarbeiten der Nachrichten intern direkt zurückgeben. Die einzige Ausnahme zu dieser Regel ist die WM_INITDIALOG-Meldung. Die Dialogfeldprozedur muss TRUE, um das System weiter verarbeiten die WM_INITDIALOG-Meldung direkt zurückgeben. In jedem Fall muss die Prozedur nicht DefWindowProc aufrufen.

Index