Delphi-PRAXiS
Seite 1 von 2  1 2   

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 ListBox auslesen (https://www.delphipraxis.net/11655-listbox-auslesen.html)

Killer 11. Nov 2003 13:08


ListBox auslesen
 
Hi ich habe folgendes Problem:

Ich habe eine ListBox, in die ich Dateinamen eines Ordners reingeschrieben habe. Nun möchte ich diese Einträge per Timer auslesen und zwar, damit mein Label die einzelnen Einträge hintereinander anzeigen kann. Wie kann ich das machen?

Matze 11. Nov 2003 13:10

Re: ListBox auslesen
 
Hi!

Willkommen in der DP!!

Meinst du sowas:

Delphi-Quellcode:
procedure TForm1.Timer1Timer(Sender: TObject);
var i: integer;
begin
  for i:=0 to ListBox1.Count-1 do
  Label1.Caption:=ListBox1.Items[i];
end;

Daniel B 11. Nov 2003 13:11

Re: ListBox auslesen
 
Hallo und herzlich Willkommen in der DP!

Dann schau Dir dochmal in der OH an wie man den Timer benutzt, mittels ItemIndex der ListBox, was auch in der OH beschrieben ist, kannst Du dann die Einträge erreichen.

choose 11. Nov 2003 13:12

Re: ListBox auslesen
 
Hallo Matze,

würde das nicht so schnell ablaufen, dass man immer nur den letzten Eintrag sieht?

neolithos 11. Nov 2003 13:13

Re: ListBox auslesen
 
Bevor du den Timer startest setzt du LB.ItemIndex := 0;

Dann könntest du in dem Timer-Ereignis

Delphi-Quellcode:
with LB do
  begin
    Label.Caption := Items[ItemIndex];
    if Item >= Count - 1 then
       T.Enabled := false // Timer stoppen
    else
       ItemIndex := ItemIndex + 1;
  end;
Alternativ zu ItemIndex kannst du auch selber eine Integer-Variable deklarieren.

Matze 11. Nov 2003 13:15

Re: ListBox auslesen
 
@choose: Wenn man das Intervall des Timers auf 1000 stellt (standard) dann sieht man die Einträge im Sekundentakt im Label. ;)

neolithos 11. Nov 2003 13:17

Re: ListBox auslesen
 
@Matze

schau deinen Code nochmal genau an

Ich würde bloß aller einer Sekunde den letzten Eintrag im Label sehen.

Matze 11. Nov 2003 13:18

Re: ListBox auslesen
 
oh :wall: stimmt :wall:

neolithos 11. Nov 2003 13:19

Re: ListBox auslesen
 
Delphi-Quellcode:
with LB do
  begin
    Label.Caption := Items[ItemIndex];
    if Item >= Count - 1 then
       ItemIndex := 0 // ODER um vorne wieder zu beginnen
    else
       ItemIndex := ItemIndex + 1;
  end;

Matze 11. Nov 2003 13:25

Re: ListBox auslesen
 
Meins könnte man auch so schreiben. ;)

Delphi-Quellcode:
var i: integer;
...
procedure TForm1.Timer1Timer(Sender: TObject);
begin
  Label1.Caption:=ListBox1.Items[i];
  inc(i);

  //fals wiederholt werden soll:
  if i=ListBox1.Count then i:=0;
end;


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