指定元件可以是變數嗎 ? |
尚未結案
|
cwc65536
初階會員 發表:47 回覆:121 積分:48 註冊:2004-10-14 發送簡訊給我 |
|
T.J.K
中階會員 發表:3 回覆:35 積分:57 註冊:2005-06-28 發送簡訊給我 |
cwc65536 您好:
可用 ComponentCount 來寫比較好
如此比較好去維護你的程式
procedure TForm1.Button1Click(Sender: TObject); Var ALabel: TLabel; AIndex : Integer; begin for AIndex := 0 to Self.ComponentCount - 1 do if Self.Components[AIndex] is TLabel then begin ALabel := TLabel( Self.Components[AIndex] ); if ALabel.Name = 'Label10' then ALabel.Caption := 'Test'; end; end; |
ayachan
一般會員 發表:7 回覆:8 積分:8 註冊:2004-04-03 發送簡訊給我 |
Hi cwc65536 您好 請參考下面的小小 sample:
procedure TForm1.FormCreate(Sender: TObject); var i: integer; begin for i:=0 to (Form1.ControlCount-1) do if (Form1.Controls[i] is TLabel) then TLabel(Form1.Controls[i]).Caption:='Test'; end;如果中間需還有什麼變化的話,個人建議您可以使用 Tag 再做分別。 例如 Label50 ~ Label75 的 Caption 要為 'Test2' 的話: for i:=0 to (Form1.ControlCount-1) do if (Form1.Controls[i] is TLabel) then if (TLabel(Form1.Controls[i]).Tag in [50..75]) then TLabel(Form1.Controls[i]).Caption:='Test2' else TLabel(Form1.Controls[i]).Caption:='Test';就可以了 |
mine
中階會員 發表:28 回覆:129 積分:56 註冊:2004-03-31 發送簡訊給我 |
|
cwc65536
初階會員 發表:47 回覆:121 積分:48 註冊:2004-10-14 發送簡訊給我 |
|
mine
中階會員 發表:28 回覆:129 積分:56 註冊:2004-03-31 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |