如何设置Edit组件的大小与位置? 如何设置组件Edit1的大小(width,height)与位置(left,top)?能不能设置? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 位置(Left Top )是可以的.但不能调高度,因为Edit是单行输入 .如果你要调高,用多行,如Memo 在设计时设置属性,或者代码设置:with edit dobegintop:=100;left:=100;width:=100;end; 高度跟随字体,如果非要弄出给人感觉比对应字体大的输入框,你可以弄张输入框背景图,然后把Edit设置弄成无边框。 但我在设计时用edit1.top:=100;edit1.left:=100;来设置edit1的位置系统报错! 刚测试了,你的代码可以,除非你的edit1没创建 说明一下我要设置edit的位置和大小的理由:设置edit的位置:是因为我用同一个edit在不同的场合,它们需要放的位置不同,设置edit的大小:我输入的字符个数在不同场合有相当多差别,且采用的字体大小也不同。 注:我用“edit1.left:=20”来设置edit的左端位置,系统报错为:[Error] Main1.pas(11163): Undeclared identifier: 'left'Main1.pas是我的一个unit。 验证了一下你的结论,完全正确: 用create语句创建出来的edit就可以设置left和top等属性了, 而在设计界面时直接放上去的edit不能设置,否则报错(如前)。我的代码是:var edit1:tedit;procedure TForm1.Button1Click(Sender: TObject);begin edit1:=tedit.create(form1); edit1.top:=400; edit1.Left:=200; edit1.height:=20; edit1.width:=300; edit1.color:=clgray; edit1.Enabled:=true; edit1.visible:=true; edit1.BorderStyle:=bsSingle;end;但是,非常遗憾,edit1没有在form1上显示出来!! 我放的。是在设计时放到form1上的。 要加个Edit1.parent := Form1;才能显示出来的 放了控件是可以的,这个很常用的。 本来你没特别需要去自己创建的话,不是可视快速开发了。新建一个工程,在窗体上放个edit, 双击窗体procedure TForm1.FormCreate(Sender: TObject);beginEdit1.Left:=100;Edit1.Top :=100;end;这个是很常用的,难道我理解错了。 楼主的Delphi象是外星版的,怪事多多。或者,楼主是外星的 edit1:=tedit.create(form1);后面加上edit1.parent:=form1; 你说的有理,加上parent语句后全部正常了! 你错了,我加上parent语句后edit的宽度和高度都能设置,显示出来也如此。我的试的程序的代码如下:procedure TForm1.Button1Click(Sender: TObject);begin edit1:=tedit.create(form1); edit1.parent:=form1; edit1.top:=100; edit1.Left:=200; edit1.height:=40; edit1.width:=300; edit1.color:=clyellow; edit1.visible:=true; edit1.BorderStyle:=bsSingle;end;显示高度为确实=40,其他设置也都正常。这里有一个问题, 语句 edit1:=tedit.create(form1);为什么不包含 edit1.parent:=form1;意思在内? 我按自己的想法编程,想出一个,就希望实现一个,想法愈来愈多,程序愈来愈大,不免会出各种各样以前没有碰到过的问题。这是自学delphi必然要经过的,但吃一蛰长一智,以后再碰到就不再需要帮助了。 .create(form1)的意思,它的生存周期同form1,即form1销毁时其也销毁,当然,也可以提前销毁。即使create(form1)了,也可以.parent=其他组件,比如panel1,这是2个概念,不同的意思,呵呵。 视图中加了触发器,但是delphi程序中执行更新时,却没有执行触发器? 如何将本地ip和创建的socket绑定,给点例子. 请问很简单的问题 (300分)想了解关于网络通信方面的内容,数据从网卡到应用程序间的经过,越详细越好,文章、例程、经验、理论都要。 关于数据库驱动 初次接触Delphi,哪位大虾能解释一下什么是VXD技术?谢谢!高分 谁能改进这段代码的效率。 请问如何在form窗体刚启动时就锁定鼠标呢? 关于窗口的问题?一定给分! 关于Tquery.close的问题 找到工作了,但为啥感觉心情一点也不愉快咧 如何获取cmd窗口中的内容?
如果你要调高,用多行,如Memo
begin
top:=100;
left:=100;
width:=100;
end;
edit1.left:=100;来设置edit1的位置系统报错!
设置edit的位置:是因为我用同一个edit在不同的场合,它们需要放的位置不同,
设置edit的大小:我输入的字符个数在不同场合有相当多差别,且采用的字体大小也不同。
验证了一下你的结论,完全正确:
用create语句创建出来的edit就可以设置left和top等属性了,
而在设计界面时直接放上去的edit不能设置,否则报错(如前)。我的代码是:
var edit1:tedit;
procedure TForm1.Button1Click(Sender: TObject);
begin
edit1:=tedit.create(form1);
edit1.top:=400;
edit1.Left:=200;
edit1.height:=20;
edit1.width:=300;
edit1.color:=clgray;
edit1.Enabled:=true;
edit1.visible:=true;
edit1.BorderStyle:=bsSingle;
end;但是,非常遗憾,edit1没有在form1上显示出来!!
我放的。是在设计时放到form1上的。
Edit1.parent := Form1;才能显示出来的
新建一个工程,在窗体上放个edit, 双击窗体
procedure TForm1.FormCreate(Sender: TObject);
begin
Edit1.Left:=100;
Edit1.Top :=100;
end;
这个是很常用的,难道我理解错了。
后面加上
edit1.parent:=form1;
你说的有理,加上parent语句后全部正常了!
你错了,我加上parent语句后edit的宽度和高度都能设置,显示出来也如此。我的试的程序的代码如下:
procedure TForm1.Button1Click(Sender: TObject);
begin
edit1:=tedit.create(form1);
edit1.parent:=form1;
edit1.top:=100;
edit1.Left:=200;
edit1.height:=40;
edit1.width:=300;
edit1.color:=clyellow;
edit1.visible:=true;
edit1.BorderStyle:=bsSingle;
end;显示高度为确实=40,其他设置也都正常。
这里有一个问题, 语句
edit1:=tedit.create(form1);
为什么不包含
edit1.parent:=form1;
意思在内?
我按自己的想法编程,想出一个,就希望实现一个,想法愈来愈多,
程序愈来愈大,不免会出各种各样以前没有碰到过的问题。
这是自学delphi必然要经过的,但吃一蛰长一智,以后再碰到就不再需要帮助了。
.create(form1)的意思,它的生存周期同form1,即form1销毁时其也销毁,当然,也可以提前销毁。即使create(form1)了,也可以.parent=其他组件,比如panel1,这是2个概念,不同的意思,呵呵。