如何实现 edit[i].text:=fields[i].asstring??

hzcenter 2009-03-18 03:03:10
界面上放了n个edit,n由1...n。edit1,edit2.....

我要用一个循环从数组里赋值给对应的edit,应该怎么做?
...全文
111 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
bdmh 2009-03-18
  • 打赏
  • 举报
回复


uses TypInfo;

var
PropInfo: PPropInfo; // 要使用 TypInfo 单元
count,i,k: integer;
con:TComponent;
begin
count := 数组长度;
for i := 0 to count - 1 do
begin
con := FindComponent('edit'+IntToStr(i+1));
if con = nil then
Exit;
PropInfo := GetPropInfo(con.ClassInfo, 'Text');
if Assigned(PropInfo) then
SetStrProp(con, PropInfo, '第'+IntToStr(i+1)+'个');
end;
end;
starluck 2009-03-18
  • 打赏
  • 举报
回复


我本身還要做好EDIT與數組做好對應才行。



for i := 0 to Component.Count -1 do
begin
if Component[i] is TEdit then begin
// 再判斷下他的TAG
if TEDit(Components[i]).tag = 99 then TEDit(Components[i]).text := fields[99].asString;
end;
end;
starluck 2009-03-18
  • 打赏
  • 举报
回复


我本身還要做好EDIT與數組做好對應才行。



for i := 0 to Component.Count -1 do
begin
if Component[i] is TEdit then begin
// 再判斷下他的TAG
if TEDit(Components[i]).tag = 99 then TEDit(Components[i]).text := fields[99].asString;
end;
end;
lgx0914 2009-03-18
  • 打赏
  • 举报
回复

for I :=0 to count(数组) - 1 do
begin
case I of
0:begin
edit1.text='';
end;
1:begin
edit2.text='';
end;
......
end;
end;

16,749

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 语言基础/算法/系统设计
社区管理员
  • 语言基础/算法/系统设计社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧