プロが教えるわが家の防犯対策術!

表題の件、どなたか教えてください。
「可能」か「不可能」かの情報や代替案でもありがたいです。

※delphi6 enterprise版を使用しています。

質問
コンポーネント名の指定に変数は使えるのでしょうか?
例えば、labelコンポーネントを複数設置しそのlabel名の末尾を数字にする(label1,2,3・・・)。何かの処理の際に、for文で変数を送り(i=1,2,3・・・)、label名+変数.captionなどという形で指定することはできるでしょうか?


ラベル名 label1 label2 label3 を設置

ボタンクリック時などに、
var
i : integer;

for i := 1 to 3 do
begin
  label(i).caption := inttostr(i) ;
end;

よろしくお願いします。

A 回答 (1件)

そのような目的にはFindComponentが使えます。



for i := 1 to 3 do
begin
TLabel(FindComponent('Label'+InttoStr(i))).Caption:=InttoStr(i);
end;
    • good
    • 3
この回答へのお礼

素早いご回答まことにありがとうございます。
これで煩雑なコーディングを回避出来そうです。

お礼日時:2009/05/15 00:37

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!