いつもお世話になっております。
ラベルエディットの入力(Text)部分をテキストファイルから自動的に読込む
ソースを以前教えていただきました。
procedure TForm7.FormCreate(Sender: TObject);
var
fn:string;
filelist:tstringlist;
i:integer;
begin
filelist:=tstringlist.Create;
try
fn:='c:\試作2\le_name.txt';
filelist.LoadFromFile(fn);
for i:= 1 to 75 do
TEdit(form7.findcomponent('labelededit'+inttostr
(i))).text:=filelist[i-1];
finally
filelist.free;
end;
end;
今回はText部分ではなく外側のCaption部分(LabeledEdit1.SubLabel)
(実際は1から75まで)をテキストファイルから読み込みたくて苦
戦しております。多分
>TEdit(form7.findcomponent('labelededit'+inttostr
>(i))).text:=filelist[i-1];
↑この部分だと思い考えられるコード
>('labelededit'+inttostr(i)+'.SubLabel')).text とか
>('labelededit'+inttostr(i)+'.EditLabel')).text とか
>('labelededit'+inttostr(i)+'.SubLabel')).Caption とか
を付け足して試してみたのですが表示できませんでした。
大変恐縮ですが分かる方いらっしゃいましたらご指導いただけますで
しょうか。宜しくお願い申し上げます。
ヘルプと、Delphiに付属のマニュアルを読んだほうがよろしいかと思います。
FindComponentは、コンポーネント名で検索するためのものです。
コンポーネントに、'.'(ピリオド)が含めることはできませんよね。
EditLabelは、TLabeledEditのプロパティです。コンポーネント名の一部ではありません。
間違えました。
> コンポーネントに、'.'(ピリオド)が含めることはできませんよね。
コンポーネント名に、'.'(ピリオド)が含めることはできませんよね。
でした。
にしのさんおはようございます。
>FindComponentは、コンポーネント名で検索するためのものです。
よく理解せずに使っていました。
冷静になって調べてやり直したところ、
TLabeledEdit(form7.findcomponent('labelededit'+inttostr(i))).EditLabel.Caption:=filelist[i-1];
で成功しました!
ヒントをいただきどうもありがとうございました。
ツイート | ![]() |