Einzelnen Beitrag anzeigen

Popov
(Gast)

n/a Beiträge
 
#13

AW: ItemBox autoselect von ini Datei

  Alt 23. Mär 2012, 08:47
Wie kann ich direkt nur den indexwert speichern? in der listbox sind unterschiedlich lange inhalte von rechner zu rechner unterschiedlich.

MfG
Wie gesagt, das macht dann Sinn wenn sich am Inhalt der ListBox nichts ändert.

Das Speichern ist relativ einfach, denn hier kann eigentlich kein Fehler vorkommen. Also einfach ItemIndex speichern.
Delphi-Quellcode:
var
  Ini: TIniFile;
begin
  Ini := TIniFile.Create(ChangeFileExt(ParamStr(0), '.ini'));
  try
    Ini.WriteInteger('Section', 'Ident', ListBox1.ItemIndex);
  finally
    Ini.Free;
  end;
end;
Das Laden ist etwas komplexer, denn hier kann ein Fehler vorkommen. Also den Wert zuerst zwischenspeichern, prüfen und erst dann zuweisen.
Delphi-Quellcode:
var
  Ini: TIniFile;
  i: Integer;
begin
  Ini := TIniFile.Create(ChangeFileExt(ParamStr(0), '.ini'));
  try
    //ListBox1.ItemIndex := -1;
    i := Ini.ReadInteger('Section', 'Ident', ListBox1.ItemIndex);

    if (i > -1) and (i < ListBox1.Items.Count) then
      ListBox1.ItemIndex := i;
  finally
    Ini.Free;
  end;
end;
  Mit Zitat antworten Zitat