我知道在本窗体成批修改控件属性的方法是:
for i:=1 to n do
Tlabel(FindComponent('label' + inttostr(i))).Visible := true;那么,如果我要在其他的窗体里,比如说主窗体MAINFORM里成批修改FORM1里控件的属性,应该怎么写呢?
for i:=1 to n do
Tlabel(FindComponent('label' + inttostr(i))).Visible := true;那么,如果我要在其他的窗体里,比如说主窗体MAINFORM里成批修改FORM1里控件的属性,应该怎么写呢?
解决方案 »
- 如何禁止发送邮件?
- quickReport怎样换行?
- [重分求助]日期转换问题~如何由当前的周次得到这个周的起始日期??
- 请教2个网络方面的问题..
- 请问:怎么分割yyyy-mm-dd?
- 不知有多少人用Delphi在搞工控方面的开发,感觉如何?欢迎大家讨论!
- 初来报到﹐卻看到这些贴﹐决定远离这里。因为是对我们的入门者的侮辱。
- [求助]请问有没有grid控件可以实现图中的小计合计效果,不要报表
- 我这条sql语句为什么每次都提示出错,ADodataset1.CommandText :='select 商品名称 from spmc where 商品类型 = 音箱 ';
- 怎样知道ctrl,alt是否按下及insert等键的状态
- 心情还是他妈的不爽!程序牌坊 :继续散!!
- 怎么读到用命令行传进来的参数呢?
var
i,j:integer;
begin
i:=form2.ComponentCount;
for j:=0 to i-1 do
begin
if form2.Components[j].ClassName='TLabel' then
(form2.Components[j] as TLabel).Caption:='csdn';
end;
end;
var
i:integer;
begin
for i:=0 to Form4.ComponentCount-1 do
begin
(Form4.Components[i] as TLabel).Visible :=True;
end;
end;
var
i:integer;
begin
for i=0 to AOwner.ComponentCount-1 do
begin
if Components[i] is TLabel then
(Components[i] as TLabel).Visible=True;
end;
end;以后调用就可以啦:节器
(Object AS TForm).visible:=true;
所以我希望使用:
for i:=1 to n do
Tlabel(FindComponent('label' + inttostr(i))).Visible := true;
这样的能把控件名字加进去进行识别的办法,怎么修改呢?
procedure TForm1.Button1Click(Sender: TObject);
var
i,j:integer;
begin
i:=form2.ComponentCount;
for j:=0 to i-1 do
begin
if pos('shape',form2.Components[j].Name)>0 then
(form2.Components[j].Name as TLabel).visible:=true;
end;
end;
错误提示为:
Operator not applicable to this operand type
运算符不使用于这一运算对象类型procedure Tmainform.Timer1Timer(Sender: TObject);
var i:integer;
shapeshow:single;
j:integer;
tt:integer;
begin
shapeshow:=moilh[i]/2600;
tt:=showallform.ComponentCount;
for j:=1 to tt do
begin //错误就出在这一行
if pos('shape'+inttostr(j),showallform.Components[j-1].Name)>0 then
begin
(showallform.Components[j-1].Name as tshape).top:=round(8+87*(1-shapeshow));
(showallform.components[j-1].name as tshape).height:=round(87*shapeshow);
end;
end;
end;
var
i,j:integer;
begin
i:=form2.ComponentCount;
for j:=0 to i-1 do
begin
if pos('shape',form2.Components[j].Name)>0 then
(form2.Components[j] as TLabel).Visible:=true;
end;
end;
为什么我一用form2.components,程序就编译错误??