Einzelnen Beitrag anzeigen

Sebastian Nintemann
(Gast)

n/a Beiträge
 
#11
  Alt 30. Dez 2002, 18:58
Hallo nochmal, hier der Code zum laden und speichern des Inhalts eines StringGrids. Ich bin von drei Spalten ausgegangen, oben eine Zeile in der "Name", "Anschrift" und "Ort" steht, also ist die zweite Zeile (Index 1) die erste von oben in die man schreiben kann. Ich habs nicht ausgiebig getestet, sollte aber klappen:

Delphi-Quellcode:
uses IniFiles;

...

procedure TForm1.ButtonSpeichernClick(Sender: TObject);
var
  ini: TIniFile;
  i : Integer;
begin
  ini := TIniFile.Create('C:\Test.ini');
  try
    i := 1;
    with StringGrid1 do
      begin
        while Cells[0,i] <> 'do
          begin
            ini.WriteString('id'+IntToStr(i),'Name',Cells[0,i]);
            ini.WriteString('id'+IntToStr(i),'Anschrift',Cells[1,i]);
            ini.WriteString('id'+IntToStr(i),'Ort',Cells[2,i]);
            inc(i)
          end
      end
   finally
     FreeAndNil(ini)
   end
end;

procedure TForm1.ButtonLadenClick(Sender: TObject);
var
  ini: TIniFile;
  SL : TStringList;
  i : Integer;
begin
  ini := TIniFile.Create('C:\Test.ini');
  SL := TStringList.Create;
  try
    ini.ReadSections(SL);
    with StringGrid1 do
      begin
        for i := 0 to pred(SL.Count) do
          begin
            Cells[0,succ(i)] := ini.ReadString(SL[i],'Name','');
            Cells[1,succ(i)] := ini.ReadString(SL[i],'Anschrift','');
            Cells[2,succ(i)] := ini.ReadString(SL[i],'Ort','');
          end
      end
   finally
     FreeAndNil(SL);
     FreeAndNil(ini)
   end
end;
Bei Fragen nur melden

Gruß, Sebastian
  Mit Zitat antworten Zitat