Condividi tramite


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); alla protected: 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