您好,我在Delphi XE2中的AnimateWindow功能有问题,问题是当我使用XE2在Windows外观中提供的皮肤时,当使用任何皮肤并与AnimateWindow结合时,程序混合了正常的设计 window 部分 window 带有蒙皮,最糟糕的是 window 被冻住了,不能多动。 代码只有这样:
procedure TForm1.FormCreate(Sender: TObject);
begin
AnimateWindow(Form1.Handle,200, AW_CENTER);
end;
如何解决这个问题?
最佳答案
该问题似乎存在于提供“样式”的所有版本(XE2 .. X Seattle)中,并且可以轻松地重复如下:
- 新的 VCL 项目
- 项目选项 - 外观 - 任何可用样式
添加问题中的代码
procedure TForm2.FormCreate(Sender: TObject);
begin
AnimateWindow(Form2.Handle,200, AW_CENTER);
end;
然后运行。该窗口出现在屏幕上,但完全没有响应。窗口上的控件似乎工作正常(到目前为止仅进行了最少的测试)。
解决方法是将 Position
属性设置为默认的 poDefault
以外的值。
Embarcadero 质量中央搜索没有提出任何报告。我会在进行更多调查后提交报告。
<小时/>已报告,RSP-13459,应用了样式的窗口在调用 AnimateWindow 时卡住
<小时/>2016 年 4 月 24 日更新昨天我收到了有关 RSP-13459 的通知:
This issue is fixed for 10.1 Berlin, it does not reproduce it with build 24.0.22088.5349.1.
关于delphi - 使用 Delphi XE2 的 AnimateWindow,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34777320/