Compartir a través de


Establecer el color de fondo del cuadro de diálogo

Puede establecer el color de fondo de los cuadros de diálogo controlando WM_CTLCOLOR los mensajes de la ventana del cuadro de diálogo. El color que establezcas se usa solo para el cuadro de diálogo especificado.

Por ejemplo, el fragmento de código siguiente establece el color de fondo del cuadro de diálogo en gris oscuro. Se OnCtlColor llama a la función miembro cada vez que se vuelve a dibujar el cuadro de diálogo:

HBRUSH CAboutDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{
    return (HBRUSH)GetStockObject(DKGRAY_BRUSH);
}

Para que el fragmento de código anterior funcione:

  • agregue virtual HBRUSH OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor); a la protected: sección de la definición de clase para el cuadro de diálogo.
  • agregue lo siguiente a la definición de clase para el cuadro de diálogo y cambie CMyDialog al nombre de la clase de diálogo:
BEGIN_MESSAGE_MAP(CMyDialog, CDialogEx)
    ON_WM_CTLCOLOR()
END_MESSAGE_MAP()

Consulte también

Trabajar con cuadros de diálogo en MFC
Control de mensajes de Windows en el cuadro de diálogo