![]() |
Über Timer Stringlist 'weiterschalten'
Hey Leute!
Da ich mit meinem Programm den aktuellen Vertretungsplan aus einer dbf auslesen lasse und nun nicht mehr nur in eine HTML-Datei ausgeben, sondern auch auf einem Monitor darstellen lassen will, benötige ich nun die Möglichkeit, dass das nur eine gewisse Anzahl an Zeilen in einem Stringgrid dargestellt werden (23) und falls noch mehr Zeilen vorhanden sind, über einen Timer dann autom. die nächste 'Seite' dargestellt wird. Ich habe es bereits über eine Schleife probiert..jedoch erfolglos. Gibt es dazu evtl ein Tutorial? Oder hat hier jemand eine Idee, wie dies zu realisieren ist? |
Re: Über Timer Stringlist 'weiterschalten'
Du willst, dass nach einer gewissen Zeit automatisch die nächste Seite angezeigt wird? Dann könntest du eine Schleife mit delay verwenden.
|
Re: Über Timer Stringlist 'weiterschalten'
Das hilft mir leider nicht bei meinem allg. Problem, wie dies zu realisieren wäre.
|
Re: Über Timer Stringlist 'weiterschalten'
Du könntest doch innerhalb des Timers ermitteln wieviele Zeilen
vorhanden sind, sind es mehr als 23 liest Du nur 23 ein und setzt ein Flag (welches auch ausserhalb des Timers existiert). Beim nächsten Aufruf des Timers prüfst Du ob das Flag gesetzt ist, ist es gesetzt werden die nächsten Zeilen geladen, ist es nicht gesetzt werden die ersten 23 Zeilen geladen. Grüße Klaus |
Re: Über Timer Stringlist 'weiterschalten'
Hättest du dafür vlt. ein Beispiel?
|
Re: Über Timer Stringlist 'weiterschalten'
Hmm.. gibt da mehrere Möglichkeiten..
erstmal ist zu klären wie du die einträge in das stringgrid einließt. Eine ganz simple, wenn auch nicht keine sehr saubere lösung ist, wenn du Alle daten in ein unsichbares 'stringgrid', einem record, einem 2d array oder wie auch immer einließt. dann die anzahl der datensätze ermittelst, und mit einem timer oder einer scheife mit delay nach und nach auf das stringgrid setzt... das du ja die anzahl der gesammtdatensätzte hast, und weiß vie wiele du pro zyklus auf dem stringgrid haben willst, sollte es doch an sich kein problem sein. Mfg Real Thunder p.s. wenn du beispielcode brauchst sage einfach bescheid |
Re: Über Timer Stringlist 'weiterschalten'
Hatte mir das ungefähr so vorgestellt.
Delphi-Quellcode:
Grüße
type
TForm1 = class(TForm) Timer1: TTimer; procedure Timer1Timer(Sender: TObject); procedure FormCreate(Sender: TObject); private FlagMoreThan23 : Boolean; { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation {$R *.dfm} procedure TForm1.Timer1Timer(Sender: TObject); begin if FlagMoreThan23 then begin // load next lines if restZeilen = 0 then FlagMoreThan23:=false; end else begin if anzahlZeilen > 23 then begin // load first 23 lines FlagMoreThan23:=true; end; end; end; procedure TForm1.FormCreate(Sender: TObject); begin FlagMoreThen23:=false; end; Klaus |
Re: Über Timer Stringlist 'weiterschalten'
Zitat:
|
Re: Über Timer Stringlist 'weiterschalten'
Werde dan mal eben ein kleines beispielproject machen.
In ca 15 min Ist es denn da. |
Re: Über Timer Stringlist 'weiterschalten'
Ist echt sehr nett von dir. :)
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:49 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz