Controllo statico o un controllo di modifica è di sola lettura o disabili, invia il messaggio WM_CTLCOLORSTATIC alla finestra padre quando il controllo è in procinto di essere disegnato. Rispondendo a questo messaggio, la finestra padre può utilizzare l'handle di contesto di periferica specificato per impostare i colori del testo e lo sfondo del controllo statico.
WM_CTLCOLORSTATIC hdcStatic = wParam (HDC); / / handle per visualizzare il contesto hwndStatic = (HWND) lParam; / / handle al controllo statico
Se un'applicazione elabora questo messaggio, il valore restituito è un handle per un pennello che il sistema utilizza per disegnare lo sfondo del controllo statico.
La funzione DefWindowProc consente di selezionare i colori di sistema predefinito per il controllo statico.
Controlli di modifica che non sono di sola lettura o disabili non inviano il messaggio WM_CTLCOLORSTATIC; invece, essi inviare il messaggio WM_CTLCOLOREDIT . Tuttavia, per motivi di compatibilità, il sistema invia il messaggio WM_CTLCOLOREDIT per i controlli di modifica in sola lettura e disabili se l'applicazione è stata progettata per Windows 3.1 o versioni precedenti.
Il sistema automaticamente non distruggere il pennello restituito. È responsabilità dell'applicazione di distruggere il pennello quando non è più necessario.
Il messaggio WM_CTLCOLORSTATIC non viene mai inviato tra thread; esso viene inviato solo all'interno della stesso thread.
Se una routine di finestra di dialogo gestisce questo messaggio, dovrebbe il valore desiderato ritorno a un BOOL il cast e restituire il valore direttamente. Se la procedura di casella di dialogo restituisce FALSE, viene eseguita la gestione dei messaggi predefiniti. Il valore DWL_MSGRESULT impostato dalla funzione SetWindowLong viene ignorato.
nbsp; Windows &NT: richiede 3.1 o versione successiva.
Windows:Richiede Windows 95 o versioni successive.
Windows CE:Richiede la versione 2.0 o successiva.
Intestazione:Dichiarata in winuser.
Cenni preliminari sui controlli statici, i messaggi di notifica di controllo statico, DefWindowProc, RealizePalette, SelectPalette, WM_CTLCOLORBTN, WM_CTLCOLORDLG, WM_CTLCOLOREDIT, WM_CTLCOLORLISTBOX, WM_CTLCOLORMSGBOX, WM_CTLCOLORSCROLLBAR
Rimedio: Inserire il CD-ROM CD di MSDN Library.