您好,我对Delphi XE2中的AnimateWindow函数有问题,问题是当我使用Windows外观中提供的XE2提供的外观时,当使用任何外观并与AnimateWindow结合使用时,该程序会混合零件窗口的正常设计对于带有皮肤的窗户,最糟糕的是窗户被冻结,无法再移动。
代码只是这样:
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年2月4日更新昨天我收到有关RSP-13459的通知:
此问题已在10.1柏林修复,无法通过以下方式重现
版本24.0.22088.5349.1。
关于delphi - 带有Delphi XE2的AnimateWindow,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/34777320/