The WM_CTLCOLORDLG message is sent to a dialog box before Windows draws the dialog box. By responding to this message, the dialog box can set its text and background colors by using the given display device context handle.
WM_CTLCOLORDLG hdcDlg = (HDC) wParam; // handle of dialog box display context hwndDlg = (HWND) lParam; // handle of dialog box
If an application processes this message, it must return the handle of a brush. Windows uses the brush to paint the background of the dialog box.
The DefWindowProc function selects the default system colors for the dialog box.
The WM_CTLCOLORDLG message is never sent between threads. It is sent only within one thread.
Note that the WM_CTLCOLORDLG message is sent to the dialog box itself; all of the other WM_CTLCOLOR* messages are sent to the owner of the control.
DefWindowProc, RealizePalette, SelectPalette, WM_CTLCOLORBTN, WM_CTLCOLOREDIT, WM_CTLCOLORLISTBOX, WM_CTLCOLORMSGBOX, WM_CTLCOLORSCROLLBAR, WM_CTLCOLORSTATIC