Sé que se puede hacer con OnCtlColor(), pero cambia de color cuando se carga el formulario y se dibujan los textos estáticos, quiero hacerlo después de cargar el formulario, con un temporizador tal vez, busqué una solución, pero no encontré una clara, esto es lo que escribí:cómo cambiar el color de fondo de un control de texto estático (cuando se presiona un botón o en un temporizador) en mfc?
void CTabFive::OnBnClickedButton1()
{
// TODO: Add your control notification handler code here
CWnd* pWnd = this->GetDlgItem(IDC_Chromosome1);
CDC* dc = pWnd->GetDC();
dc->SetBkColor(RGB(200,0,0));
pWnd->Invalidate();
pWnd->UpdateWindow();
Invalidate();
UpdateWindow();
//flag = true;
}
Se debe llamar a OnCtlColor cada vez que se vuelve a dibujar un control. Intente invalidar la ventana y escriba la función OnCtlColor, que funciona según el estado actual, por ejemplo, usando algunas variables establecidas por el controlador WM_TIMER. –
@AlexFarber: ¿Hay alguna forma de invalidar un solo control del formulario, no el formulario completo? porque cuando uso invalidar, vuelve a dibujar todo el formulario y provoca un parpadeo! –