Форма Delphi, рисующая черную вспышку при восстановлении - PullRequest
1 голос
/ 27 ноября 2009

Когда я минимизирую и восстанавливаю свое приложение Delphi, содержимое окна вспыхивает ужасным черным перед (пере) перерисовкой на Vista / Win7. Это также можно увидеть в интегрированной среде разработки Delphi 2007 - инспектор объектов, менеджер проектов, окно «Сообщения» (но не содержимое редактора) также мигают черным цветом при восстановлении.

Кажется, что ни одна из привычных технологий рисования без мерцания не имеет никакого значения, а некоторые даже ухудшают его: DoubleBuffered, WS_EX_COMPOSITED, WM_ERASEBKGND и т. Д.

Большинство приложений Microsoft не проявляют такого поведения. Это проблема с реализацией Delphi форм Windows? Кто-нибудь знает об обходном пути?

Ответы [ 3 ]

0 голосов
/ 27 ноября 2009

У меня D2007 и D2010 на двух машинах (64-битный ноутбук Win7 и 32-битный рабочий стол Vista), и у меня нет этой проблемы ни в IDE, ни в моих приложениях.

У вас есть поддержка тем / Aero включен? Какая видеокарта и драйверы? Вы используете классический внешний вид в Windows?

0 голосов
/ 08 июня 2013

Когда вы регистрируете свой класс окна, установите hbrBackground в (HBRUSH) (COLOR_3DFACE + 1)

0 голосов
/ 27 ноября 2009

Я бы проверил наличие у вас видеодрайверов и проверил все настройки. Я никогда не видел эффекта, который вы описываете на этих ОС, ни с Delphi, ни с моими собственными приложениями; и если бы это была широко распространенная проблема, я уверен, что группы новостей Embarcadero были бы полны ею.

...