Escribí una calculadora usando MFC y quería cambiar el color de fondo del cuadro de visualización. ¿Qué debo hacer?
Ahora puede manejar el mapeo de mensajes en _WM_CTLCOLOR() y no es difícil usarlo. Te daré un ejemplo de código. Estas funciones son bien conocidas. ¡Echa un vistazo!
HB rush ccolorlgtextdlg::OnCtlColor(CDC*pDC,CWnd*pWnd,UINT nCtlColor)
{
HBRUSH HBR = CDialog::onctl color(pDC , pWnd, nCtlColor);
//HB rush m_brush =::CreateSolidBrush(RGB(255,0,0));
//TODO: Cambiar aquí Cualquier propiedad de DC .
if(pWnd- gt;getdlgctrlid()== IDC_static_title)//Determine el control específico aquí.
{
pDC->; SetTextColor(RGB(255, 255, 0));
pDC->; >
//HBR = m_brush;
}
if(pWnd- gt;getdlgctrlid()= = IDC_edit 1)//Igual que el anterior, también se utiliza Determinar un específico control.
{
pDC->;SetTextColor(RGB(255,0,0));
pDC->;SetBkColor(RGB(111,111, 11) );
}
// TODO: Si el pincel predeterminado no es el deseado, devuelve otro pincel.
Volver a hbr
}