いつもお世話になっております。
SaveDialogを使ってEditBox内の数字を新規のテキストファイル
に保存したいと思っております。次回起動した時にこの内容を
読込んで元の画面に戻したい時があるからです。
1個だけで挑戦してみました
procedure TForm1.Button1Click(Sender: TObject);
var
fstr:string;
filelist:tstringlist;
begin
if SaveDialog1.Execute then
begin
filelist:=tstringlist.create;
fstr:=SaveDialog1.FileName;
filelist[0]:=edit1.text;
filelist.savetofile(fstr);
filelist.Free;
end;
end;
結果は「リストのインデックスが範囲を超えています(0)」と
エラーが出てしまいます。
>filelist[0]:=edit1.text;
等に無理があるのでしょうか?
ご指導いただきたく宜しくお願い申し上げます。
Halbow です。
> 結果は「リストのインデックスが範囲を超えています(0)」と
> エラーが出てしまいます。
> >filelist[0]:=edit1.text;
> 等に無理があるのでしょうか?
無理がありますね。つくられた直後の TStringList のインスタンスには、
行はありません。ないものに代入することはできませんね。正解は
filelist.Add(edit1.text);
です。
Halbowさんおはようございます。
無理があるっぽいとは感じてましたが原因がはっきりせず歯がゆい
次第でした。的確なご指導どうもありがとうございます。
>filelist.Add(edit1.text);
実行したらばっちりでした。ご親切にどうもありがとうございました。
ツイート | ![]() |