很简单的问题,要分的赶快抢呀!(100分)

  • 主题发起人 主题发起人 HLHGOD
  • 开始时间 开始时间
H

HLHGOD

Unregistered / Unconfirmed
GUEST, unregistred user!
举个例子:我有一个窗体、窗体中有1个按钮,按钮放在靠底边上,当我运行程序时,我把
窗体最大化,按钮就跑到窗体中间了,如何才能做到根据窗体大小自动适应位置(可能有几
十个按钮,而且排列不规则)。
 
把按钮放到一个Panel上

Panel方于窗体上面,并设置Panel的Align属性为alBottom
 
这么简单的事情我肯定知道,但有几百个按钮,而且排列不规则(比如三角型、棱形),还
怎么放?
 
看样是显示器由15——17了
 
设置按钮的Anchors属性啊。
 
既然你要他运行的时候最大化,那你就在他最大化排列好他咯!
或者在写一段程序指定啊
 
那就只有自己在 OnResize中处理了,

有几百个按钮为什么不用菜单???
 
按照比例计算 top left 啊, 或者我问一般用一个panel onbottom,然后在用一个panel onclient
把按钮放在onbottom的panel上就可以了
 
楼上兄弟说的对,我重复说一遍
在窗体中放两个panel
将panel1的Align为alBottom,将按钮放在此panel1上,随便你放了。(三角形。。)
调整好大小后即可!
将panel2的Align为alClient,这样你去看看!
窗体只改变上面的内容,而不改变下面的大小!
 
看来各位还没明白我的意思,我的意思是不通过panel,让窗体上面的控件可以自适应
窗体大小,要是可以通过panel摆放就可解决问题,我也就不麻烦各位了,我知道可以
通过编程实现某个按钮或控件的比例位置,但假如有几十个控件时,有什么好的编程
方法解决,我可不想一个一个控制,最好能有一起控制的方法。
 
我回答过这样的问题呀!就是像楼上的做法一样的!
 
多谢各位的回答,我已经解决了,但不是用panel,分分吧!
 
试试这个吧,我想你是这个意思
var
Button1: TButton;
Button2: TButton;
Button3: TButton;

Button1 := TButton.Create(Self);
Button2 := TButton.Create(Self);
Button3 := TButton.Create(Self);
with Button1 do
begin
Name := 'Button1';
Parent := Self;
Left := 112;
Top := 56;
Width := 75;
Height := 25;
Anchors := [];
Caption := 'Button1';
TabOrder := 0;
end;
with Button2 do
begin
Name := 'Button2';
Parent := Self;
Left := 192;
Top := 104;
Width := 75;
Height := 25;
Anchors := [];
Caption := 'Button2';
TabOrder := 1;
end;
with Button3 do
begin
Name := 'Button3';
Parent := Self;
Left := 272;
Top := 136;
Width := 75;
Height := 25;
Anchors := [];
Caption := 'Button3';
TabOrder := 2;
end;
其实就是你把Anchors这个属性好好设一下,就可以了,什么写代码呀,什么Panel,都不能的
就是点几个鼠标就行了!
 
有幸看过thinknet兄的源码,真是有幸,还请多多指教。
 
不好意思啊,QQ989753,你来晚一步,我刚刚分完分,怎么就看见你发信了,世上竞有这等
巧事,要分下次吧,不过还得谢谢你。
 

Similar threads

回复
0
查看
978
不得闲
D
回复
0
查看
2K
DelphiTeacher的专栏
D
D
回复
0
查看
1K
DelphiTeacher的专栏
D
D
回复
0
查看
1K
DelphiTeacher的专栏
D
后退
顶部