![]() |
Bei ComboBox Auswahl Daten aus INI-File in StringList lesen
Hallo Leute,
ich habe eine Programmoberfläche die nur aus einer ComboBox (mit den Einträgen Abschnitt1; Abschnitt2 und Abschnitt3) und einer Stringlist besteht. Weiterhin habe ich eine INI Datei die wie folgt aussieht:
Code:
Ich möchte nun das bei der ComboBox Auswahl "Abschnitt1, die Werte aus Abschnitt1 der Inidatei in die Stringlist eingelesen werden, bei Auswahl von Abschnitt2 die Werte aus Abschnitt2 etc.
[Abschnitt1]
1=wert1 2=wert2 3=wert3 [Abschnitt2] 1=wert1 2=wert2 3=wert3 [Abschnitt3] 1=wert1 2=wert2 3=wert3 Das Problem bei der Sache ist das nicht jeder Abschnitt unbedingt gleichviele Werte enthält - kann mir jemand sagen wie ich das machen muss? Danke schonmal im vorraus. |
Re: Bei ComboBox Auswahl Daten aus INI-File in StringList le
Kuck mal in der Hilfe zu TIni unter ReadSection, ReadSections, ReadSectionValues.
|
Re: Bei ComboBox Auswahl Daten aus INI-File in StringList le
Okay, danke erstmal für die schnelle Antwort (und das um diese Uhrzeit), der für mich richtige Befehl wäre dann ja ReadSectionValues.
Jetzt habe ich für das OnSelect Ereigniss folgende Routine geschrieben:
Code:
Allerdings bekomme ich beim Versuch die Anwendung zu kompilieren die FM:
uses IniFiles
procedure TForm1.ComboBox1Select(Sender: TObject); var Ini : TIniFile; begin Ini := TIniFile.Create('C:\ets.ini'); if ComboBox1.ItemIndex = 5 then Ini.ReadSectionValues('Konti6',ListBox1.Items); end; Ini.Free; end;
Delphi-Quellcode:
Kann mir jemand sagen welche Deklaration Ihm noch fehlt?
[Fehler] Unit1.pas(36): Deklaration erwartet, aber Bezeichner 'Ini' gefunden
[Fehler] Unit1.pas(37): '.' erwartet, aber ';' gefunden [Fataler Fehler] Project1.dpr(5): Verwendete Unit 'Unit1.pas' kann nicht compiliert werden |
Re: Bei ComboBox Auswahl Daten aus INI-File in StringList le
Das End hinter dem
Ini.ReadSectionValues('Konti6', ListBox1.Items); ist überflüssig. Ini.ReadSectionValues erwartet als ersten Parameter einen String also 'Konti6' als Section und dann eine Stringlist zur Aufnahme aller Weter dieser Section. Da vorher mit einer ComboBox gearbeitet wurde, meine ich mal, dass es Ini.ReadSectionValues('Konti6', ComboBox1.Items); heißen sollte. |
Re: Bei ComboBox Auswahl Daten aus INI-File in StringList le
So das Semikolon am Ende der entsprechenden Zeile habe ich entfernt, die Fehlermeldung bleibt aber identisch.
Die Angabe von ListBox1.Items ist so schon richtig, weil ich die ComboBox nur zur Auswahl der Sektion der Ini-Datei nehme und je nach Auswahl die Werte in die ListBox eingetragen werden sollen. |
Re: Bei ComboBox Auswahl Daten aus INI-File in StringList le
Hallo Helpliner,
Delphi-Quellcode:
PROCEDURE TForm1.ComboBox1Select(Sender: TObject);
VAR Ini : TIniFile; BEGIN Ini := TIniFile.Create('C:\ets.ini'); TRY IF ComboBox1.ItemIndex = 1 THEN Ini.ReadSectionValues('Abschnitt2', ListBox1.Items); FINALLY Ini.Free; END; END; Inhalt von C:\ets.ini
Code:
funktioniert.
[Abschnitt1]
1=wert1 2=wert2 3=wert3 [Abschnitt2] 1=wert1 2=wert2 3=wert3 [Abschnitt3] 1=wert1 2=wert2 3=wert3 p.s. Beachte den Resourcen-Schutzblock (TRY/FINALLY) -sollte beim "Createn" immer dabei sein, auch wenn er in der D5-OH unter "ReadSectionValues" fehlt :shock: |
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:53 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