全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:1044
推到 Plurk!
推到 Facebook!

如何改寫這個語句?

答題得分者是:william
mathewzhao
中階會員


發表:121
回覆:164
積分:67
註冊:2003-04-04

發送簡訊給我
#1 引用回覆 回覆 發表時間:2003-07-30 12:33:24 IP:61.150.xxx.xxx 未訂閱
各位先進好! 視窗上有多個Edit,經常需要將其中幾個Edit的visible設為false 如下列寫法太繁瑣: Edit2.visible:=false; Edit5.visible:=false; Edit7.visible:=false; Edit8.visible:=false; Edit9.visible:=false; Edit15.visible:=false; 請問有沒有較簡單的方法,謝謝!
william
版主


發表:66
回覆:2535
積分:3048
註冊:2002-07-11

發送簡訊給我
#2 引用回覆 回覆 發表時間:2003-07-30 12:37:37 IP:147.8.xxx.xxx 未訂閱
You may be interested in FindComponent, ComponentCount, Components method/property. You can also make use of the Tag property of every component.
mathewzhao
中階會員


發表:121
回覆:164
積分:67
註冊:2003-04-04

發送簡訊給我
#3 引用回覆 回覆 發表時間:2003-07-30 13:27:58 IP:219.145.xxx.xxx 未訂閱
感謝前輩William的回應!  我現在使用下列方式:將全部EDIT的Visible設為:true;
 I:integer;
 ...
  For i:=0 to Componentcount-1 do
  begin
   if Components[i].Classtype=TEdit then
    begin
     TEdit(Form1.Components[i]).visible:=false;
    end;
  end;
然後再根據需要一些Edit的visible 設為false(如上) 但我不知如何用FindComponent和Tag寫的較簡單些,如方便能否舉一個示例,謝謝
william
版主


發表:66
回覆:2535
積分:3048
註冊:2002-07-11

發送簡訊給我
#4 引用回覆 回覆 發表時間:2003-07-30 13:35:59 IP:147.8.xxx.xxx 未訂閱
 I:integer;
 ...
  For i:=0 to Componentcount-1 do
  begin
   if (Components[i].Tag in [1,2,3]) and (Components[i] is TEdit) then
    begin
     TEdit(Form1.Components[i]).visible:=false;
    end;
  end;    ...
TEdit(Form1.FindComponent('Edit1')).Visible := False;    
mathewzhao
中階會員


發表:121
回覆:164
積分:67
註冊:2003-04-04

發送簡訊給我
#5 引用回覆 回覆 發表時間:2003-07-30 14:07:22 IP:219.145.xxx.xxx 未訂閱
前辈回应的真快呀,再次感谢!     我将需要显示的edit的tag全设为:1,需要隐藏的edit的tag保持:0   Code 如下:
 
   For i:=0 to Componentcount-1 do
  begin
   if (not (Components[i].Tag in [1,2,3])) and (Components[i].Classtype=Tedit) then
    begin
     Tedit(Form1.Components[i]).visible:=false;
    end;
  end;
这样就可以了。 但是我不太明白为什么 tag要设1,2,3, 将需要显示的edit的tag全设为1, (not (Components[i].Tag in [1,2,3]))改为Components[i].Tag<>1 这样不是更简略吗? 我想多设几个tag值是不是另有好处?
william
版主


發表:66
回覆:2535
積分:3048
註冊:2002-07-11

發送簡訊給我
#6 引用回覆 回覆 發表時間:2003-07-30 14:13:19 IP:147.8.xxx.xxx 未訂閱
This is just an example  >
系統時間:2024-05-16 6:00:58
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!