如何自动调整控件在FORM中的位置?(100分)

  • 主题发起人 主题发起人 黑夜孤灯
  • 开始时间 开始时间

黑夜孤灯

Unregistered / Unconfirmed
GUEST, unregistred user!
嘿嘿,又是个菜鸟级的QUESTION,请各位高”脚“赐教:
在主FORM中,放了个PANEL(ALIGN:ALTOP),PANEL中均匀放置三个BUTTON控件,
但把主FORM最大化后,BUTTON控件在PANEL中的布置不在均匀,右边空出一大块。
请问如何才能自动调整控件在FORM中的位置?
谢谢!(积分不多,实在拿不出多的,见谅,见谅。)
 
你可以在FormResize下根据panel的宽度自己算一下就行了
 
多用Panel,不断的分害屏幕,panel中再加panel,呵呵就这样。
 
在Panel的OnResize事件中写代码

//假定你在设计时已摆放好3个Button的位置

procedure TForm1.Panel1Resize(Sender: TObject);
var
CntWidth:Integer; //Button的总宽度
xx:Integer; //本次需要的偏移量
begin
CntWidth:=(Button3.Left+Button3.Width-Button1.Left);
xx:=(Panel1.Width - CntWidth) div 2 - Button1.Left;
Button1.Left := Button1.Left + xx;
Button2.Left := Button2.Left + xx;
Button3.Left := Button3.Left + xx;

end;
 
设置BUTTON的anchors属性即可
 
VeryCoolBoy的方法可行,不过最好固定窗体的大小。
form1.BorderStyle:=bsSingle;
form1.BorderIcons:=[biSystemMenu,biMinimize];
 
多谢各位的帮助。
SPECIAL TO VERYCOOLBOY!
 
后退
顶部