AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

ListBox auslesen

Ein Thema von Killer · begonnen am 11. Nov 2003 · letzter Beitrag vom 12. Nov 2003
Antwort Antwort
Seite 1 von 2  1 2      
Killer

Registriert seit: 11. Nov 2003
152 Beiträge
 
Delphi 6 Enterprise
 
#1

ListBox auslesen

  Alt 11. Nov 2003, 14:08
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?
  Mit Zitat antworten Zitat
Benutzerbild von Matze
Matze
(Co-Admin)

Registriert seit: 7. Jul 2003
Ort: Schwabenländle
14.929 Beiträge
 
Turbo Delphi für Win32
 
#2

Re: ListBox auslesen

  Alt 11. Nov 2003, 14:10
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;
  Mit Zitat antworten Zitat
Daniel B
(Gast)

n/a Beiträge
 
#3

Re: ListBox auslesen

  Alt 11. Nov 2003, 14:11
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.
  Mit Zitat antworten Zitat
choose

Registriert seit: 2. Nov 2003
Ort: Bei Kiel, SH
729 Beiträge
 
Delphi 2006 Architect
 
#4

Re: ListBox auslesen

  Alt 11. Nov 2003, 14:12
Hallo Matze,

würde das nicht so schnell ablaufen, dass man immer nur den letzten Eintrag sieht?
gruß, choose
  Mit Zitat antworten Zitat
neolithos

Registriert seit: 31. Jul 2003
Ort: Dresden
1.386 Beiträge
 
Delphi 7 Architect
 
#5

Re: ListBox auslesen

  Alt 11. Nov 2003, 14:13
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.
- ciao neo -
Es gibt niemals dumme Fragen, sondern nur dumme Antworten!
  Mit Zitat antworten Zitat
Benutzerbild von Matze
Matze
(Co-Admin)

Registriert seit: 7. Jul 2003
Ort: Schwabenländle
14.929 Beiträge
 
Turbo Delphi für Win32
 
#6

Re: ListBox auslesen

  Alt 11. Nov 2003, 14:15
@choose: Wenn man das Intervall des Timers auf 1000 stellt (standard) dann sieht man die Einträge im Sekundentakt im Label.
  Mit Zitat antworten Zitat
neolithos

Registriert seit: 31. Jul 2003
Ort: Dresden
1.386 Beiträge
 
Delphi 7 Architect
 
#7

Re: ListBox auslesen

  Alt 11. Nov 2003, 14:17
@Matze

schau deinen Code nochmal genau an

Ich würde bloß aller einer Sekunde den letzten Eintrag im Label sehen.
- ciao neo -
Es gibt niemals dumme Fragen, sondern nur dumme Antworten!
  Mit Zitat antworten Zitat
Benutzerbild von Matze
Matze
(Co-Admin)

Registriert seit: 7. Jul 2003
Ort: Schwabenländle
14.929 Beiträge
 
Turbo Delphi für Win32
 
#8

Re: ListBox auslesen

  Alt 11. Nov 2003, 14:18
oh stimmt
  Mit Zitat antworten Zitat
neolithos

Registriert seit: 31. Jul 2003
Ort: Dresden
1.386 Beiträge
 
Delphi 7 Architect
 
#9

Re: ListBox auslesen

  Alt 11. Nov 2003, 14:19
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;
- ciao neo -
Es gibt niemals dumme Fragen, sondern nur dumme Antworten!
  Mit Zitat antworten Zitat
Benutzerbild von Matze
Matze
(Co-Admin)

Registriert seit: 7. Jul 2003
Ort: Schwabenländle
14.929 Beiträge
 
Turbo Delphi für Win32
 
#10

Re: ListBox auslesen

  Alt 11. Nov 2003, 14:25
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;
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:15 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