AnimateWindow с Delphi XE2

Здравствуйте, у меня есть проблема с функцией AnimateWindow в Delphi XE2, проблема в том, что когда я использую скины, предлагаемые XE2, найденные в окнах, при использовании скина любого и в сочетании с AnimateWindow, программа смешивает нормальный дизайн окон детали of the window with skins, the worst is that the window is frozen and can not move more. The code is only this:

procedure TForm1.FormCreate(Sender: TObject);
begin
  AnimateWindow(Form1.Handle,200, AW_CENTER);
end;

Как это исправить?

1 ответ

Решение

Кажется, что проблема существует во всех версиях, которые предоставляют "Стили" (XE2 .. X Сиэтл) и могут быть легко повторены следующим образом:

  • Новый проект VCL
  • Параметры проекта - Внешний вид - Любой доступный стиль

Добавить код как в вопросе

procedure TForm2.FormCreate(Sender: TObject);
begin
  AnimateWindow(Form2.Handle,200, AW_CENTER);
end;

И беги. Окно появляется на экране, но полностью не отвечает. Элементы управления в окне, кажется, работают нормально (пока только минимальное тестирование).

Обходной путь должен установить Position свойство к чему-то другому, чем по умолчанию poDefault,

Качественный центральный поиск Embarcadero не вызывал никаких отчетов. Я подам отчет после того, как сделаю еще одно расследование.


Сообщается, RSP-13459, окно с примененным стилем зависает при вызове AnimateWindow


Обновление 24.4.2016 Вчера я получил уведомление относительно RSP-13459:

Эта проблема исправлена ​​в версии 10.1 Berlin, она не воспроизводится со сборкой 24.0.22088.5349.1.

Другие вопросы по тегам