Einzelnen Beitrag anzeigen

NicoDE
(Gast)

n/a Beiträge
 
#2

Re: INI Datei in einem Treeview anzeigen

  Alt 18. Feb 2005, 12:29
Du könntest die Werte als Kinder der Sektionen anzeigen, einfaches Beispiel:
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
  IniFile: TMemIniFile;
  SecList: TStringList;
  SecIndx: Integer;
  SecNode: TTreeNode;
  ValList: TStringList;
  ValIndx: Integer;
begin
  // Öffnen-Dialog
  if not OpenDialog1.Execute then
    Exit;
  // Ini einlesen
  IniFile := TMemIniFile.Create(OpenDialog1.FileName);
  with TreeView1 do
  try
    Items.Clear;
    Items.BeginUpdate;
    SecList := TStringList.Create;
    ValList := TStringList.Create;
    try
      // Sektionen holen
      IniFile.ReadSections(SecList);
      for SecIndx := 0 to SecList.Count - 1 do
      begin
        // Unter Wurzel (nil) in den TreeView
        SecNode := Items.Add(nil, SecList.Strings[SecIndx]);
        // Werte in der aktuellen Sektion holen
        IniFile.ReadSectionValues(SecList.Strings[SecIndx], ValList);
        for ValIndx := 0 to ValList.Count - 1 do
          // Unter Sektionsknoten in den TreeView
          Items.AddChild(SecNode, ValList.Strings[ValIndx]);
        SecNode.Expand(True);
      end;
    finally
      ValList.Free;
      SecList.Free;
    end;
  finally
    Items.EndUpdate;
    IniFile.Free;
  end;
end;
Am besten das Beispiel versuchen über die Delphi-Hilfe zu verstehen. Und eventuell so erweitern (Objekte an Knoten), dass nur die Namen der Werte angezeigt werden und der Inhalt z.B. in einem TLabel...


Gruss Nico
  Mit Zitat antworten Zitat