Impostazione del colore di sfondo della finestra di dialogo
È possibile impostare il colore di sfondo delle finestre di dialogo gestendo WM_CTLCOLOR
i messaggi per la finestra di dialogo. Il colore che si imposta è utilizzato solo per la finestra di dialogo specificata.
Ad esempio, il frammento di codice seguente imposta il colore di sfondo della finestra di dialogo su grigio scuro. La OnCtlColor
funzione membro viene chiamata ogni volta che viene ridisegnata la finestra di dialogo:
HBRUSH CAboutDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{
return (HBRUSH)GetStockObject(DKGRAY_BRUSH);
}
Per il funzionamento del frammento di codice precedente:
- aggiungere
virtual HBRUSH OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor);
allaprotected:
sezione della definizione della classe per il dialogo. - aggiungere quanto segue alla definizione di classe per il dialogo e passare
CMyDialog
al nome della classe del dialogo:
BEGIN_MESSAGE_MAP(CMyDialog, CDialogEx)
ON_WM_CTLCOLOR()
END_MESSAGE_MAP()
Vedi anche
Utilizzo delle finestre di dialogo in MFC
Gestione dei messaggi di Windows nella finestra di dialogo