editで指定したlabelに表示するには?

解決


いも鉄  2008-06-01 02:52:49  No: 30834  IP: [192.*.*.*]

WindowsXP
delphi 6
とても安直に考えて、作りはじめたのですが、editで指定したlabel.captionにデータを入れることが出来ず、質問させていただきます。

edit2つに、labelを複数貼り付けたフォームで、edit1で入力したラベル名にedir2で入力したデータを入れ表示したいのですが、私の頭では、if文をラベルの数だけ書いて、同じ名前のラベルに入れる・・・

if edit1.text=label1.name then label.caption:=edit2.text;
                        ・
                        ・
100個ラベルがあったら、if文を100書くのか、としか思い浮かびません。
もっといい方法があると思いますが、勉強不足の為、どなたか、アドバイスをお願いいたします。

編集    削除
みんみん  2008-06-01 04:18:34  No: 30835  IP: [192.*.*.*]

いろいろ方法はあると思いますが、
こんなのはどうでしょう?

FindComponentでEdit1のTextから同じNameを持つTLabelを取得しています。
 
(FindComponent(Edit1.Text) as TLabel).Caption :=Edit2.Text;

編集    削除
いも鉄  2008-06-01 04:58:48  No: 30836  IP: [192.*.*.*]

みんみんさん、有難うございました。
100行が1行になりました。
私の思いつきより、遥かにいい方法だとです。
FindComponent、勉強させていただきました。

とても良いアドバイス有難うございました。

編集    削除