Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Edit.text aus einer ini lesen (https://www.delphipraxis.net/129989-edit-text-aus-einer-ini-lesen.html)

gasty 1. Mär 2009 10:16


Edit.text aus einer ini lesen
 
Hallo erstmal :P
Also mein Problem ist folgendes:
Ich habe eine Ini-Datei. Mit immer einer Section und 2 Strings in der Section.
Also:
Zitat:

[Section1]
String1= blabla
String2= blub
[Section2]
...
Und bisher habe ich erfolgreich geschafft die Sections in Combobox.Items zu laden :mrgreen:
Nun mein Problem: Ich möchte die beiden Strings (je nachdem welche Section in der Combobox gewählt ist) in Edit1.Text und Edit2.Text lesen.
Aber der Benutzer soll die Liste auch selbstständig erweitern können.
Freue mich über jeden Denkanstoss oder Hilfestellung :P

Danke schonmal fürs lesen :zwinker:

mkinzler 1. Mär 2009 10:21

Re: Edit.text aus einer ini lesen
 
Einfach mit TIniFile.ReadString()
Ich würde aber eine ComboBox statt Edit verwenden

gasty 1. Mär 2009 10:23

Re: Edit.text aus einer ini lesen
 
Hm, also so hab ich es auch probiert, aber wenn der Benutzer es selbst erweitert kann man das ja nichtmehr auslesen, weil es dann ja eine neue Section ist. Oder sehe/denke ich da grade etwas falsch?

Hansa 1. Mär 2009 11:10

Re: Edit.text aus einer ini lesen
 
Der soll also 2 Strings in neue/vorhandene Section schreiben ? Wenn die Section neu ist, dann muss das Programm das ja auch wissen. Also : Section schreiben und dann die zwei Strings. Zeige mal den bereits vorhandenen Quelltext.

Satty67 1. Mär 2009 11:12

Re: Edit.text aus einer ini lesen
 
Schau Dir mal die Hilfe zu TIniFile.ReadString / WriteString an.

Du hast warscheinlich die Liste der Combobox mit ReadSection eingelesen? Beim Schreiben gehst Du so vor:

Section löschen (EraseSection? musst in der Hilfe schauen), dann in einer Schleife alle Listenwerte der ComboBox mit WriteString schreiben.

Da in etwa so vorgehen (ungetestet)
Delphi-Quellcode:
for i := 0 to ComboBox.Items.Count-1 do
  IniFile.WriteString('MySection', 'Value'+IntToStr(i), ComboBox.Items[i])
Direct wieder einlesen müsste so gehen:
IniFile.ReadSection('MySection', ComboBox.Items);

Das war nix ;)

gasty 1. Mär 2009 11:19

Re: Edit.text aus einer ini lesen
 
Also bisher habe ich zum einlesen Der Sections in die Combobox das hier:
Delphi-Quellcode:
procedure TForm1.FormCreate(Sender: TObject);
begin
  rlini:= Tinifile.Create((ExtractFileDir(Application.Exename)+'\Realmlisten.ini'));
  try
    rlini.ReadSections(ComboBox2.Items);
  finally
    rlini.Free;
  end;
end;
und dann zum einlesen der Daten:
Delphi-Quellcode:
procedure TForm1.ComboBox2Change(Sender: TObject);
begin
 rlini:= Tinifile.Create((ExtractFileDir(Application.Exename)+'\Realmlisten.ini'));
  case Combobox2.ItemIndex of
     0: try
          Edit1.Text := rlini.ReadString('Offi','Realmlist','');
          Edit2.Text := rlini.ReadString('Offi','Patchlist','');
        finally
          rlini.free;
        end;
(es geht dann noch weiter mit 1,2,3, etc.)
Aber wenn der Benutzer ja was hinzufügt müsste das irgendwie auch automatisch weiter ausgelesen werden, so müsste ich es ja manuell dazuschreiben.

Hansa 1. Mär 2009 11:23

Re: Edit.text aus einer ini lesen
 
Zitat:

Zitat von gasty
...Aber wenn der Benutzer ja was hinzufügt müsste das irgendwie auch automatisch weiter ausgelesen werden, so müsste ich es ja manuell dazuschreiben.

Ja sicher muss das auch geschrieben werden. Ich seh nur was von lesen. :shock: Wie soll denn sonst was richtig ausgelesen werden, ohne dass es vorher geschrieben wird ??

gasty 1. Mär 2009 11:30

Re: Edit.text aus einer ini lesen
 
Das Geschriebene is ja schon da ^^
Also die Sections 1-4 sind schon da und fertig zum auslesen, aber wenn jetzt zb jemand Section 5 hinzufügt wollte ich, dass es dann ausgelesen wird (in die Combobox kommt es ja durch readsections) aber in das edit feld wird das dann ja nich geladen.
Is etwas kompliziert zu erklären und ich hab es womöglich auch etwas ungeschickt umschrieben :P

Satty67 1. Mär 2009 11:31

Re: Edit.text aus einer ini lesen
 
Ah, Ok... hatte Deien Aufgabenstellung zu ungenau gelesen.

Du hast eine ComboBox mit allen Sections und zwei Edits mit je einem Eintrag für die aktuell gewählte Section?

gasty 1. Mär 2009 11:34

Re: Edit.text aus einer ini lesen
 
Genau


Alle Zeitangaben in WEZ +1. Es ist jetzt 10:53 Uhr.
Seite 1 von 2  1 2      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz