![]() |
LoadDialog mit TMainMenu funktioniert nicht korrekt.
Hallo,
Ich habe mal wieder eine Frage :oops: . Es geht um folgendes: Ich möchte mit dem Klicken des Elements "Open" in einer TMainMenu (also der Leiste oben) alle Einträge in einer ini-Datei auslesen. Dabei habe ich schon eine Lösung nur lädt der nur (bzw. zeigt nur) die erste Zeile in meiner Tabelle an. Nur die Tabellenüberschriften werden geladen sonst nichts. Irgendetwas stimmt mit meiner Prozedur nicht. Vielleicht könnt ihr mir helfen.
Delphi-Quellcode:
Mit freundlichen Grüßen Subsidenz
var
name,t : String; [...] procedure TForm1.oeffnenClick(Sender: TObject); begin open.execute; t:=open.Filename; try ini := TIniFile.Create(ExtractFilePath( ParamStr(0))+name); begin a:=1; n:=0; t:='t'; begin sl := TStringList.Create; try Ini.ReadSectionValues(t+IntToStr(0),sl); b := sl.Count; finally FreeAndNil(sl); end; grid.RowCount:=b+1; for a:=1 to b do for n:=0 to 4 do grid.Cells[n,a]:=ini.ReadString(t+IntToStr(n), IntToStr(a), ''); end; ShowMessage('Ladevorgang war erfolgreich!'); end; finally ini.free; end; end; |
Re: LoadDialog mit TMainMenu funktioniert nicht korrekt.
Jetzt wäre es ziemlich hilfreich die Ini-Datei zu kenne.
Und warum mamchst du das:
Delphi-Quellcode:
Warum schreibst du nicht 't0', wenn sich doch nichts ändert?
Ini.ReadSectionValues(t+IntToStr(0),sl);
|
Re: LoadDialog mit TMainMenu funktioniert nicht korrekt.
Zitat:
Deswegen:
Delphi-Quellcode:
Ich merk grad dass ich t 2mal belegt habe muss das schnell mal korrigieren.
Ini.ReadSectionValues(t+IntToStr(0),sl);
t soll der Name der datei sein, und in dieser Datei (immer eine ini) soll er Werte auslesen. |
Re: LoadDialog mit TMainMenu funktioniert nicht korrekt.
Zitat:
Delphi-Quellcode:
und lass dir s mal ausgeben.
s := t + IntToStr(0);
So würde dein Code mit dem IntToStr(0) mehr Sinn ergeben:
Delphi-Quellcode:
for i := t0 9 do
begin Ini.ReadSectionValues(t+IntToStr(i),sl); //...; end; |
Re: LoadDialog mit TMainMenu funktioniert nicht korrekt.
Es sollte so funktionieren:
1. Ich wähle eine ini-Datei aus. 2. Er soll sich den Namen der ini-Datei merken. 3. Er soll die Werte aus der ausgewählten ini-Datei auslesen und in die Tabelle eintragen. So ungefähr sollte es funktionieren. :lol: |
Re: LoadDialog mit TMainMenu funktioniert nicht korrekt.
Ich hab das Gefühl, dass Du ReadSections und nicht ReadSectionValues brauchst.
|
Re: LoadDialog mit TMainMenu funktioniert nicht korrekt.
Der meckert an folgender Stelle:
Delphi-Quellcode:
ini := TIniFile.Create(ExtractFilePath( ParamStr(0))+name);
|
Re: LoadDialog mit TMainMenu funktioniert nicht korrekt.
Sorry, Glaskugel kaputt...
Könnte aber an Name liegen |
Re: LoadDialog mit TMainMenu funktioniert nicht korrekt.
Zitat:
|
Re: LoadDialog mit TMainMenu funktioniert nicht korrekt.
Delphi-Quellcode:
Soweit funktioniert das aber er lädt nur eine Zeile. Bin ratlos :?: . In der Tabelle erscheinen nur die fixierten Zellenüberschriften.
procedure TForm1.oeffnenClick(Sender: TObject);
begin open.execute; u:=open.Filename; a:=1; n:=0; t:='t'; begin sl := TStringList.Create; ini := TIniFile.Create(ExtractFilePath( ParamStr(0))+u); try Ini.ReadSectionValues(t+IntToStr(0),sl); b := sl.Count; finally FreeAndNil(sl); end; grid.RowCount:=b+1; for a:=1 to b do for n:=0 to 4 do grid.Cells[n,a]:=ini.ReadString(t+IntToStr(n), IntToStr(a), ''); end; ShowMessage('Ladevorgang war erfolgreich!'); ini.free; end; MFG Subsidenz |
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:55 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz