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 Ini File Problem (https://www.delphipraxis.net/130945-ini-file-problem.html)

Ouou 16. Mär 2009 14:00


Ini File Problem
 
Hallo erstmal,

ich hätte da eine problem/frage und zwar arbeite ich gerade an ein projekt, dass die Kosten für jeden monat ausrechnen soll. nun habe ich da ein porblem und komme einfach nicht drauf wie ich es lösen kann. ich beschäftige mich zurzeit mit IniFiles bin soweit gekommen, das sich beim schließen des Programms eine IniFile erstellt und beim öffnen die eingegebenen werte wieder angezeigt werden. das problem ist jetzt das ich das für 1200 edit-felder benötige und ich nicht unbedingt einen Quellcode so häufig schreiben will :( . gibt es hierfür eine möglichkeit das ganze kürzer zu schreiben?

Danke schon mal im voraus für die hilfe

mfg Ouou

holliesoft 16. Mär 2009 14:05

Re: Ini File Problem
 
Hi,

kannst Du konkret beschreiben, was Dein Programm machen soll?

Ich vermute, Du willst viele Daten anzeigen / eingeben. Da bietet sich das TStringGrid an.

Gruß
Patrick

Blackheart 16. Mär 2009 14:10

Re: Ini File Problem
 
1200 Edits, da solltest du vieleicht mal das ganze Konzept überdenken und vieleicht auch mal über eine Datenbank nachdenken.

mquadrat 16. Mär 2009 14:12

Re: Ini File Problem
 
Falls es sich um tabellarische Daten handelt kannst du sie in ein Dataset packen und dessen Load / Save Methoden für XML Dateien nutzen.


Falls du bei den INI Files bleiben willst: Durchnummerieren. Deine Edits bekommen ein gleiches Prefix und eine fortlaufende Nummer, also z.B. Edit1 - Edit9999. Dann kannst du die Werte in einer Schleife schreiben und Lesen.

Ouou 16. Mär 2009 14:13

Re: Ini File Problem
 
es handelt sich um eine Kostenaufstellung. es sind verschiedene konten,wo man jeden monat die kosten eingeben soll(januar,februar usw.) und zum schluss soll der gesamtbetrag errechnet werden. das es sehr viele konten sind, beinhaltet es auch sehr viele edits... beim öffnen des projektes sollen dann die eingegeben zahlen dann jeweils in den edits stehen. hoffe das ich es soweit verständlich erklärt habe :).

mfg Ouou

mquadrat 16. Mär 2009 14:15

Re: Ini File Problem
 
Wie wär's mit nem editierbaren Grid statt den Edits? Also eher in Richtung Excel.. Nur so als Idee ;) Zum Edit <-> INI Problem siehe meinen letzten Beitrag

Ouou 16. Mär 2009 14:23

Re: Ini File Problem
 
die sache ist die, dass ich den platz nich habe für ein grid, da es eine bestimmte größe haben muss. da ist es mit den edits einfacher zu handhaben, da man sie beliebig verändern kann usw. ich werde mir das mit einer schleife mal anschauen.

mfg

worker 16. Mär 2009 14:31

Re: Ini File Problem
 
Zitat:

Zitat von Ouou
die sache ist die, dass ich den platz nich habe für ein grid

Zitat:

Zitat von Ouou
das ich das für 1200 edit-felder benötige

:gruebel:

Schau Dir das Grid mal genau an; das kannst Du auch beliebig verändern. Und wenn Du es selber zeichnest.
Aber 1200 Edits.... Hallo?!

hoika 16. Mär 2009 14:37

Re: Ini File Problem
 
Hallo,

zumal Inis's meines Wissens immer noch auf 64kB begrenzt sind.

Wenn du für 1200 Edits Platz hast, sollte es für ein Grid auch langen.
Oder du nimmst ein PageControl mit mehreren Grids.


Heiko

nahpets 16. Mär 2009 14:41

Re: Ini File Problem
 
Hallo,

das Prinzip sollte eigentlich recht einfach sein:
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
Var
          i : Integer;
          ini : TIniFile;
begin
  ini := TIniFile.Create('INIDATEI.INI');
  // Zum Speichern
  For i := 0 to ComponentCount - 1 do begin
    If Components[i] Is TEdit then with Components[i] As TEdit Do begin
      ini.WriteString('Abschnitt',name,text);
    end;
  end;
  // Zum Lesen
  For i := 0 to ComponentCount - 1 do begin
    If Components[i] Is TEdit then with Components[i] As TEdit Do begin
      text := ini.ReadString('Abschnitt',name,text);
    end;
  end;
  ini.Free;
end;
Wenn die Edits alle auf einem Formular liegen, reicht oben die Routine aus. Es wird einfach die Liste der Komponenten auf dem Formular durchgegangen und wenn ein TEdit gefunden wird, wird in den Ini-Abschnitt der Name des Edits und der Inhalt des Attributes Text geschrieben. Das Lesen funktioniert analog.

Sind die Edits auf mehrere Formulare verteilt, dann machst Du das für jedes Formular separat. Die Abschnitte benennst Du dann am Besten wie die Formulare, so kannst Du über die Namen auf die Werte in der INI-Datei zugreifen.


Alle Zeitangaben in WEZ +1. Es ist jetzt 12:39 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