我正在使用AnimateWindow方法(只调用底层的WinAPI调用),同时在Delphi Tokyo中使用VCL样式。代码看起来像这样(实际上取自另一个Stack Overflow问题)。
procedure TForm4.Button1Click(Sender: TObject);
begin
if hidden = False then
begin
AnimateWindow(Panel1.Handle, 256, AW_SLIDE or AW_HOR_NEGATIVE or AW_HIDE);
hidden := True;
end
else
begin
AnimateWindow(Panel1.Handle, 256, AW_SLIDE or AW_HOR_POSITIVE or AW_ACTIVATE);
hidden := False;
end;
端;
动画有效,但它看起来很糟糕 - 它是生涩的,并且在动画时会在面板边缘绘制白色瑕疵。它不仅仅是我电脑上的图形,而且看起来像是一个更普遍的问题。完全关闭样式会使操作正确呈现,但这不是我想要的结果。
这种方法不适用于使用VCL样式的应用程序吗?