Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi Aus Textfile in Combobox laden (https://www.delphipraxis.net/96231-aus-textfile-combobox-laden.html)

Mark90 20. Jul 2007 13:38


Aus Textfile in Combobox laden
 
Hi leute.

ich habe eine TExtdatei in der ich verschiedene informationen speichere.

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
  i: integer;
  sl: Tstringlist;
  hlp: string;
begin
  sl := Tstringlist.create;// hier lade ich zeile für zeile in eine combobox
  sl.LoadFromFile('save.txt');
  for i := 0 to ComboBox1.Items.Count - 1 do begin
       hlp := sl.Strings[i];
       combobox1.Items.Add(hlp);

  end;

end;
leider funzt das nicht. meine combobox wird nicht geladen.

danke schon im vorraus

Klaus01 20. Jul 2007 13:41

Re: Aus Textfile in Combobox laden
 
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
  i: integer;
  sl: Tstringlist;
  hlp: string;
begin
  sl := Tstringlist.create;// hier lade ich zeile für zeile in eine combobox
  sl.LoadFromFile('save.txt');
  for i := 0 to sl.Count - 1 do begin  // sl.count
       hlp := sl.Strings[i];
       combobox1.Items.Add(hlp);

  end;

end;
Die ComboBox ist zu Anfang ja noch leer.

Einfacher geht es vielleicht so:

Delphi-Quellcode:
ComboBox1.Items.LoadFromFile(ExtractFilePath(ParamStr(0))+'save.txt');
Grüße
Klaus

DeddyH 20. Jul 2007 13:41

Re: Aus Textfile in Combobox laden
 
Delphi-Quellcode:
sl := Tstringlist.create;
ComboBox1.Items.BeginUpdate;
try
  sl.LoadFromFile('save.txt');
  ComboBox1.Items.Assign(sl);
finally
  sl.Free;
  ComboBox1.Items.EndUpdate;
end;

Bernhard Geyer 20. Jul 2007 13:42

Re: Aus Textfile in Combobox laden
 
Delphi-Quellcode:
combobox1.Items.LoadFromFile('save.txt');

DeddyH 20. Jul 2007 13:44

Re: Aus Textfile in Combobox laden
 
Klar, da hab ich gar nicht dran gedacht :wall:

s-off 20. Jul 2007 13:44

Re: Aus Textfile in Combobox laden
 
Hallo,

Deine Combobox ist leer, daher greift ein Zähler darauf nicht.

Delphi-Quellcode:
Procedure TForm1.Button1Click(Sender: TObject);
Var
   i: integer;
   sl: Tstringlist;
Begin
   sl := Tstringlist.create;
   Try
      sl.LoadFromFile('save.txt');
      For i := 0 To sl.Count - 1 Do Begin
         combobox1.Items.Add(sl.Strings[i]);
      End;
   Finally
      FreeAndNil(sl);
   End;
End;

Mark90 20. Jul 2007 14:16

Re: Aus Textfile in Combobox laden
 
danke schon mal für die antworten. nur wie setzte ich den zähler bei der combobox auf null?

außerdem würde combobox1.items.loadfromfile("save.txt") nicht gehen, da ich jeden string noch ändere.

DeddyH 20. Jul 2007 14:16

Re: Aus Textfile in Combobox laden
 
Welcher Zähler?

Klaus01 20. Jul 2007 14:18

Re: Aus Textfile in Combobox laden
 
Zitat:

Zitat von Mark90
danke schon mal für die antworten. nur wie setzte ich den zähler bei der combobox auf null?

außerdem würde combobox1.items.loadfromfile("save.txt") nicht gehen, da ich jeden string noch ändere.

Nun, das war in Deinem obigen Beispiel nicht ersichtlich.

Delphi-Quellcode:
ComboBox1.Items.clear;
sollte zum Löschen der Liste reichen.
Dann sollte auch count auf 0 sein.

Grüße
Klaus

DeddyH 20. Jul 2007 14:22

Re: Aus Textfile in Combobox laden
 
Und wenn Du es machst, wie ich unter #3 gepostet habe, brauchst Du Dich um den Zähler nicht zu kümmern ;)

Klaus01 20. Jul 2007 14:23

Re: Aus Textfile in Combobox laden
 
Zitat:

Zitat von DeddyH
Und wenn Du es machst, wie ich unter #3 gepostet habe, brauchst Du Dich um den Zähler nicht zu kümmern ;)

Dann kann er aber die Strings nicht mehr bearbeiten bevor sie der ComboBox assigned werden.

Grüße
Klaus

Mark90 20. Jul 2007 14:25

Re: Aus Textfile in Combobox laden
 
danke!

weißst du auch zufällig wie sowas in borland c++ aussieht, da ich eigentlich mit c++ arbeite?

DeddyH 20. Jul 2007 14:29

Re: Aus Textfile in Combobox laden
 
Zitat:

Zitat von Klaus01
Dann kann er aber die Strings nicht mehr bearbeiten bevor sie der ComboBox assigned werden.

Wieso nicht? Zwischen LoadFromFile und Assign kann er doch mit der Stringliste machen, was er will :gruebel:

Klaus01 20. Jul 2007 14:35

Re: Aus Textfile in Combobox laden
 
Zitat:

Zitat von DeddyH
Zitat:

Zitat von Klaus01
Dann kann er aber die Strings nicht mehr bearbeiten bevor sie der ComboBox assigned werden.

Wieso nicht? Zwischen LoadFromFile und Assign kann er doch mit der Stringliste machen, was er will :gruebel:

Nun, das stimmt.
Aber bringt es Vorteile gegenüber der Version mit der for Schleife?
Wenn ich die StringListe bearbeiten will, muß ich auch die ganze Liste durchlaufen.
Also warum nicht bei der Übertragung von der StringList zur Combobox bearbeiten.

Grüße
Klaus

DeddyH 20. Jul 2007 14:39

Re: Aus Textfile in Combobox laden
 
Da hast Du natürlich Recht, dann ist das Jacke wie Hose (vom Aufruf von "Clear" mal abgesehen).


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:48 Uhr.

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