![]() |
TStatusbar in welchem Ereignis?
Hi Leute,
beim Starten soll in meinem Programm ein Verzeichnis durchsucht werden und die gefundenen Dateien in eine Combobox geschrieben werden. Nun wollte ich beim Starten in einem Panel der Statusbar den Text 'Scanning directory...' und wenn fertiggescannt dann 'Scanning finished' einblenden lassen. Jedoch erscheint der Text verständlicherweise im OnCreate-Ereignis der Form nicht. Nur wenn alles fertig ist, steht da halt mein 'Scanning finished'. Jetzt wollte ich fragen wie ich denn das Programm starten und dann mein Scan durchführen (mit Beschriftungen in der Statusbar) lassen kann? Gibt's dafür ein Extra-Ereignis? Gruß Calculon -- |
Re: TStatusbar in welchem Ereignis?
Hi,
ich gehe immer wie folgt vor: Im Constructor setzte ich Application.OnIdle auf eine Methode. In dieser Methode setzte ich erst Application.OnIdle wieder auf nil und starte dann meinen Code. Cu, Frank |
Re: TStatusbar in welchem Ereignis?
Hi,
meine Variante sähe dann so aus: Eine Variable FirstStart wird im OnCreate auf True gesetzt. Dann das OnActivate:
Delphi-Quellcode:
Mfg
begin
if FirstStart then begin FirstStart := false; StatusBar.SimpleText := 'Scanning directory...'; Application.ProcessMessages; ScanDirs; StatusBar.SimpleText := 'Scanning finished.'; end; end; FAlter |
Re: TStatusbar in welchem Ereignis?
Hi nochmal,
danke für die Antworten. Habe mich für Falters Methode entschieden, da sie sehr schnell umzusetzen ist (Ich bin mir auch über die Nachteile: Bei jedem OnActivate wird eine Prüfung durchgeführt und Einführung einer globalen Variable - bewusst). Gruß Calculon -- |
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:23 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 by Thomas Breitkreuz