Autor Beitrag
whitef
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 202
Erhaltene Danke: 1

Windows X
Delphi XE X
BeitragVerfasst: So 28.01.07 22:32 
Hallo,
vorab ich bin neu hier und versuche mich mit der Materie Delphi mehr auseinander zusetzen.
Ich habe Delphi 7.

Ich möchte gerne Daten, in diesem Fall Wörter oder Zahlen (je nach dem). per Edit.Box in eine INI-Datei speichern und wieder mittels Klick auf ComboBox aufführen lassen.
Später möchte ich weitere Daten zu den einzelnen Rubriken speichern (diese werden dann ganz normal in edit.box ausgelesen. Also denke ich schonmal hierbei, dass man mit variablen arbeiten muss...

Das Speichern von Daten habe ich schon:
ausblenden Delphi-Quelltext
1:
2:
3:
Ini := TIniFile.Create('zzz.ini');
Ini.WriteString('Programm_Speicher''Programm 1', Edit1.Text);
Ini.Free;


Das auslesen in einer Edit.Box funktioniert auch:
ausblenden Delphi-Quelltext
1:
2:
Edit1.Text := Ini.ReadString('Programm_Speicher''Programm 1''nichts');
Ini.Free;


Allerdings möchte ich Diese Daten nicht in einer Edit.Box auslesen lassen, sondern in einer ComboBox, bloß wie?!


Dies funktioniert nicht:
ausblenden Delphi-Quelltext
1:
2:
ComboBox1.Items.add : Ini.ReadString('Programm_Speicher''Programm 1''nichts');
Ini.Free;


Moderiert von user profile iconChristian S.: Code- durch Delphi-Tags ersetzt
Moderiert von user profile iconChristian S.: Topic aus Delphi Language (Object-Pascal) / CLX verschoben am So 28.01.2007 um 23:00
Blackheart666
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 2195

XP
D3Prof, D6Pers.
BeitragVerfasst: So 28.01.07 23:38 
Hallo
Das ist genauso wie beim String also
ausblenden Delphi-Quelltext
1:
2:
3:
Memo1.Lines.Add('MyString');

ComboBox1.Items.add(Ini.ReadString('Programm_Speicher''Programm 1''nichts'));

bei Integer musst Du es natürlich noch umwandeln.

_________________
Blackheart666
Der Irrsinn ist bei Einzelnen etwas Seltenes, - aber bei Gruppen, Parteien, Völkern, Zeiten die Regel. (Friedrich Nietzsche)
whitef Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 202
Erhaltene Danke: 1

Windows X
Delphi XE X
BeitragVerfasst: So 28.01.07 23:50 
mh, habs irgendwie net verstanden...
habs trotzdem mal eingefügt - klappt aber logischerweise nicht...

noch ideen?
Blackheart666
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 2195

XP
D3Prof, D6Pers.
BeitragVerfasst: So 28.01.07 23:59 
user profile iconwhitef hat folgendes geschrieben:
mh, habs irgendwie net verstanden...
habs trotzdem mal eingefügt - klappt aber logischerweise nicht...

noch ideen?


Wie ist den deine Logik

ausblenden Delphi-Quelltext
1:
2:
3:
4:
procedure TForm1.FormCreate(Sender: TObject);
begin
  ComboBox1.Items.add(Ini.ReadString('Programm_Speicher''Programm 1''nichts'));
end;

_________________
Blackheart666
Der Irrsinn ist bei Einzelnen etwas Seltenes, - aber bei Gruppen, Parteien, Völkern, Zeiten die Regel. (Friedrich Nietzsche)
whitef Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 202
Erhaltene Danke: 1

Windows X
Delphi XE X
BeitragVerfasst: Mo 29.01.07 00:39 
jo, das hatte ich schonmal, allerdings kommt da voll die fehlermeldung "zugriffsverletzung.... blablabla"... "EAccesViolation"

danke trotzdem, oder mach ich da was falsch?

ich poste hier mal den orginal Quelltext:

ausblenden Quelltext
1:
2:
3:
4:
5:
procedure TForm1.Button2Click(Sender: TObject);
begin
ComboBox1.Items.add(Ini.ReadString('Programm_Speicher', 'Programm 1', 'nichts'));
Ini.Free; //Und wieder freigeben
end;




mh, bin wirklich ratlos...
Blackheart666
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 2195

XP
D3Prof, D6Pers.
BeitragVerfasst: Mo 29.01.07 00:59 
Ich schätze mal Du die Ini schon vorher Frei gibst, probiers mal so.
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
var
  Form1: TForm1;
  Ini: TIniFile;
implementation

{$R *.dfm}
procedure TForm1.FormCreate(Sender: TObject);
begin
  Ini := TIniFile.Create(ExtractFilePath(ParamStr(0)) + 'Einstellung.ini'); //Ini beim Start Erzeugen
end;

procedure TForm1.SchreibenClick(Sender: TObject);
begin
  Ini.WriteString('Programm_Speicher''Programm 1', Edit1.Text);
end;

procedure TForm1.LesenClick(Sender: TObject);
begin
  ComboBox1.Items.Add(Ini.ReadString('Programm_Speicher''Programm 1''nichts'));
end;

procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
  Ini.Free; //Beim Beenden Freigeben
end;

_________________
Blackheart666
Der Irrsinn ist bei Einzelnen etwas Seltenes, - aber bei Gruppen, Parteien, Völkern, Zeiten die Regel. (Friedrich Nietzsche)
whitef Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 202
Erhaltene Danke: 1

Windows X
Delphi XE X
BeitragVerfasst: Mo 29.01.07 22:23 
Titel: funktioniert!!!
mhh das ist wirklich rätzelhaft aber es funktioniert komischer weise nun!!!!
Vielen Dank an Alle die geholfen haben! ;)
Ich muss sagen dieses Forum ist um einiges besser als das von "dsdt.info"!!!

Hier der komplette Quelltext:
ausblenden volle Höhe Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
unit test;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, IniFiles, ExtCtrls, jpeg, ShellAPI;

type
  TForm1 = class(TForm)
    ComboBox1: TComboBox;
    Edit1: TEdit;
    Button1: TButton;
    Button2: TButton;
    procedure Button1Click(Sender: TObject);
 
    procedure Button2Click(Sender: TObject);

  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;
  ini: TIniFile;

implementation
{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
Ini := TIniFile.Create('zzz.ini'); //Ini beim Start Erzeugen
Ini.WriteString('Programm_Speicher''Programm 1', Edit1.Text);
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
ComboBox1.Items.add(Ini.ReadString('Programm_Speicher''Programm 1'''));
Ini.Free; //Beim Beenden Freigeben
end;

end.