Mam aplikację, która ma mnóstwo kontroli. I ma ogromną ilość migotania, szczególnie przy starcie.Migotanie w aplikacji Windows Forms
Zastosowałem do tego fix.
protected override CreateParams CreateParams
{
get
{
CreateParams cp = base.CreateParams;
cp.ExStyle |= 0x02000000; // WS_EX_COMPOSITED
return cp;
}
}
To działało świetnie - migotanie zostało zredukowane o całkiem niewiarygodną ilość. Jednak efektem ubocznym jest to, że przyciski Minimalizuj, Maksymalizuj i Zamknij w prawym górnym rogu okna nie animują się, gdy przesuję mysz lub klikam (nadal działają). Dzięki temu aplikacja będzie czuć się swobodnie.
Jak zachować WS_EX_COMPOSITED, zachowując jednocześnie funkcjonalność przycisków Maksymalizuj, Minimalizuj i Zamknij?
Dzieje się tak w systemie Windows XP. Jak zauważył @fallenidol, nie jest to problemem w systemie Windows 7.
Idealne pytanie (chcę tej funkcjonalności, próbowałem tej rozdzielczości, w jaki sposób osiągnąć tę funkcjonalność z tym nowym ograniczeniem). –
BTW, próbowałem tej poprawki w aplikacji testowej działającej w systemie Windows 7, a przyciski Maksymalizuj, Minimalizuj i Zamknij nadal wydają się animować. – pmcilreavy
@ fallenidol. Dobrze wiedzieć. Wszyscy moi klienci mają XP. – AngryHacker