AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Object-Pascal / Delphi-Language Delphi Verzögerung während Prozedur läuft....

Verzögerung während Prozedur läuft....

Ein Thema von litsa · begonnen am 15. Okt 2010 · letzter Beitrag vom 15. Okt 2010
Antwort Antwort
Benutzerbild von litsa
litsa

Registriert seit: 6. Jul 2006
Ort: Detmold
51 Beiträge
 
Delphi 2006 Architect
 
#1

Verzögerung während Prozedur läuft....

  Alt 15. Okt 2010, 13:07
Delphi-Version: 2006
Hallo,

ich habe ein Programm bei dem ich auf einen Button klicke, der so einiges startet/macht (es werden Dateien gelesen, Daten gesammelt, Tabellen gefüllt, neue Dateien geschrieben...). Das klappt auch alles ganz gut aber eine Kleinigkeit nicht:

Delphi-Quellcode:
procedure TForm1.Button2Click(Sender: TObject);
begin

  Label1.Caption := 'Daten werden geladen...'; //Das hier will nicht...
  ComboChange;
  WerteEinlesen;

end;
Ich hatte das Label1 vorher in WerteEinlesen ganz am Anfang und da der Text nicht erschien habe ich es rausgenommen aber der Text wird immer noch nicht angezeigt (nur zur Info: wenn ich die beiden procedures weglasse erscheint der Text). Außerdem wird der Text auch nirgendwo im Code auf '' gesetzt. In WerteEinlesen habe ich eine ProgressBar die ganz normal den Fortschritt zeigt, wollte halt noch einen Text dadrunter packen. Kann ich mir den Text trotzdem irgendwie anzeigen lassen?

Danke, Eva
Evangelia
-
  Mit Zitat antworten Zitat
Benutzerbild von Tonic1024
Tonic1024

Registriert seit: 10. Sep 2003
Ort: Cuxhaven
559 Beiträge
 
RAD-Studio 2009 Ent
 
#2

AW: Verzögerung während Prozedur läuft....

  Alt 15. Okt 2010, 13:09
Hi...

Mach vor ComboChange mal ein Application.Processmessages; rein.

Gruß,

Toni
Der frühe Vogel fängt den Wurm, richtig.
Aber wird nicht auch der frühe Wurm vom Vogel gefressen?
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.289 Beiträge
 
Delphi 11 Alexandria
 
#3

AW: Verzögerung während Prozedur läuft....

  Alt 15. Okt 2010, 13:10
Delphi-Quellcode:
procedure TForm1.Button2Click(Sender: TObject);
begin

  Label1.Caption := 'Daten werden geladen...'; //Das hier will nicht...
  Application.ProcessMessages; //das hier einfügen
  ComboChange;
  WerteEinlesen;

end;
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu
Online

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
38.743 Beiträge
 
Delphi 10.4 Sydney
 
#4

AW: Verzögerung während Prozedur läuft....

  Alt 15. Okt 2010, 13:11
Wenn der Text vom Label geändert wird, dann wird nur eine "zeichne dich bitte mal neu"-Message an dein Label/Programm gesendet.
Und ohne eine Verarbeitung dieser Nachricht wird nichst gezeichnet.

Delphi-Quellcode:
  Label1.Caption := 'Daten werden geladen...';
  ComboChange;
  Application.ProcessMessages; <<< Nachrichten verarbeiten
  WerteEinlesen;
[edit]
da war zwar wer schneller, aber egal
ich würde sowieso noch die Änderungen an der ComboBox abwarten, bevor ich zeichnen lasse, jedenfalls wenn das ComboChange nicht zu lange dauert.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
Delphi-Tage 2005-2014
  Mit Zitat antworten Zitat
Benutzerbild von litsa
litsa

Registriert seit: 6. Jul 2006
Ort: Detmold
51 Beiträge
 
Delphi 2006 Architect
 
#5

AW: Verzögerung während Prozedur läuft....

  Alt 15. Okt 2010, 13:15
Ok, beides hat geklappt!

Vielen Dank, Eva
Evangelia
-
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie
(Moderator)

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#6

AW: Verzögerung während Prozedur läuft....

  Alt 15. Okt 2010, 13:25
Warum eigentlich immer gleich die Holzhammermethode? Reicht nicht auch die Methode Repaint oder Refresh?
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#7

AW: Verzögerung während Prozedur läuft....

  Alt 15. Okt 2010, 13:27
Wobei man sagen sollte, dass so ein "langwieriger" Teil besser in einem Thread aufgehoben ist.
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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:47 Uhr.
Powered by vBulletin® Copyright ©2000 - 2021, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2021 by Daniel R. Wolf