Tengo una aplicación que tiene un montón de controles. Y tiene una gran cantidad de parpadeo, especialmente en el arranque.Parpadeo en una aplicación de Windows Forms
Apliqué este fix a él.
protected override CreateParams CreateParams
{
get
{
CreateParams cp = base.CreateParams;
cp.ExStyle |= 0x02000000; // WS_EX_COMPOSITED
return cp;
}
}
Esto funcionó muy bien - el parpadeo se redujo en una cantidad bastante increíble. Sin embargo, el efecto secundario es que los botones Minimizar, Maximizar y Cerrar de la esquina superior derecha de la ventana no se animan cuando muevo el mouse o hago clic en ellos (aunque siguen funcionando). Esto le da a la aplicación una sensación colgada.
¿Cómo mantengo el WS_EX_COMPOSITED sin perder la capacidad de uso de los botones Maximizar, Minimizar y Cerrar?
Esto ocurre en Windows XP. Como señaló @fallenidol, esto no es un problema en Windows 7.
Pregunta perfecta (deseo esta funcionalidad, probé esta resolución, ¿cómo logro esta funcionalidad con esta nueva restricción?). –
Por cierto, probé esta corrección en una aplicación de prueba que se ejecuta en Windows 7 y los botones Maximizar, Minimizar y Cerrar aún parecen animarse. – pmcilreavy
@fallenidol. Es bueno saberlo. Todos mis clientes están en XP. – AngryHacker