发信人: xf129()
整理人: (2000-12-05 19:02:28), 站内信件
|
【 在 levels (levels) 的大作中提到: 】
: 不要告诉我用anchors!
: 我试了,很困难!!!
: 急!!!
有一个很经典的技巧,就是如何在屏幕分辨率改变时相应调整窗体的尺寸,
使窗体的相对位置和大小保持不变,和这个程序有类似的地方。应用其原理,
我们只需在Form的OnCanResize Event中添加相应代码即可。当试图改变
Control大小的时候就会发生TControl.OnCanResize Event。
下面的例子中设置了一个Button,在改变Form大小的时候,相应的改变
Button的大小和位置。
procedure TForm1.FormCanResize(Sender: TObject; var NewWidth, NewHeigh t: Integer; var Resize: Boolean);
begin
with button1 do
begin
top:=round(form1.height/5);//也可以为NewHeight,NewWidth
width:=round(form1.width/5);
left:=round(form1.width/7);
height:=round(form1.height/7);
end;
end;
需要说明的是,其中有关大小的参数采用窗体的Width和Height,如果有
必要,我们还可以进一步相应设置字体的大小。
-- ※ 来源:.月光软件站 http://www.moon-soft.com.[FROM: 202.107.148.36]
|
|