ComboBoxの内容をiniへ保存するには?


ライム  2007-04-11 05:14:18  No: 25717

ComboBoxの内容をiniに保存したいのですが

procedure TForm1.Button1Click(Sender: TObject);
var
  ini: TIniFile;
begin
  ini:=TIniFile.Create('favorite.ini');
  try
    ini.WriteString('favorite','favoritelist',ComboBox1.Items[]);
  finally
    ini.Free;
  end;
end;

Itemsの[]内で行数を指定するとその行しか保存されません
ComboBoxのItemsをすべて保存する方法はありませんか?


ライム  2007-04-11 05:35:28  No: 25718

こんな感じで自己解決したのですが

var
  ini: TIniFile;
begin
  ini:=TIniFile.Create('favorite.ini');
  try
    ini.WriteString('favorite','favoritelist1',ComboBox1.Items[0]);
    ini.WriteString('favorite','favoritelist2',ComboBox1.Items[1]);
    ini.WriteString('favorite','favoritelist3',ComboBox1.Items[2]);
    ini.WriteString('favorite','favoritelist4',ComboBox1.Items[3]);
    ini.WriteString('favorite','favoritelist5',ComboBox1.Items[4]);
    ini.WriteString('favorite','favoritelist6',ComboBox1.Items[5]);
    ini.WriteString('favorite','favoritelist7',ComboBox1.Items[6]);
    ini.WriteString('favorite','favoritelist8',ComboBox1.Items[7]);
    ini.WriteString('favorite','favoritelist9',ComboBox1.Items[8]);
    ini.WriteString('favorite','favoritelist10',ComboBox1.Items[9]);
  finally
    ini.Free;
  end;
end;

今度は読み込みのほうがうまくいきません・・・
上のソースのWriteの部分をReadに変えただけなんですが・・・


まさか...  2007-04-11 10:01:02  No: 25719

>上のソースのWriteの部分をReadに変えただけなんですが・・・
...こんな↓コード書いてるの?
  ini.ReadString('favorite','favoritelist1',ComboBox1.Items[0]);
  ini.ReadString('favorite','favoritelist2',ComboBox1.Items[1]);
  ......


うんと  2007-04-11 13:00:55  No: 25720

ini なんかいじる前に  for とか  while とかの制御文とかの基本文法を勉強すべし


ものぐさ倶楽部  2007-04-11 17:25:06  No: 25721

ini.WriteString(〜,'favoritelist',ComboBox1.Items.CommaText);

ComboBox1.Items.CommaText:= ini.ReadString(〜, 'favoritelist', '');


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加