我可以实现form以矩形重中间开始,向外逐渐显示出整个form,楼上的大侠是从左上开始的。
我还可以实现以圆形的形状向外扩展,其实很简单procedure TForm1.Button2Click(Sender: TObject);
var
rgn:thandle;
i:integer;
begin
for i:=1 to trunc(width/2) do
begin
//创建矩形边界
rgn:=CreateRectRgn(trunc(width/2)-i,
trunc(height/2)-i,
trunc(width/2)+i,
trunc(height/2)+i);
SetWindowRgn(handle,rgn,true);
sleep(10);
end;
end;
var
rgn:thandle;
i:integer;
begin
for i:=1 to trunc(width/1.414) do
begin
//创建圆形边界
rgn:=CreateEllipticRgn(trunc(width/2)-i,
trunc(height/2)-i,
trunc(width/2)+i,
trunc(height/2)+i);
SetWindowRgn(handle,rgn,true);
sleep(10);
end;
end;
以及各种各样的边界组合