Entwickler-Ecke
Grafische Benutzeroberflächen (VCL & FireMonkey) - Label Caption mehrmals innerhalb einer Procedure ändern
Danny87 - Do 22.09.16 14:24
Titel: Label Caption mehrmals innerhalb einer Procedure ändern
Hey Leute,
wenn ich in einer Procedure mehrmals die Caption eines Labels ändern möchte, werden die Änderungen erst nach Abschluss der Procedure angezeigt.
Ich weiß, dass man irgendwie dafür sorgen konnte, dass Änderungen sofort angezeigt werden, aber ich weiß nicht mehr wie (hab schon seit 'ner halben Ewigkeit kein Delphi mehr programmiert) und weiß auch nicht wirklich wonach ich da Googlen soll :oops:.
Könnt ihr mir da vielleicht auf die Sprünge helfen, bitte?
Beispiel (Label = lblLots):
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18:
| procedure TfrmMain.calcLots(); var sHTML : string; objRegEx : TRegEx; objMatch : TMatch; begin lblLots.Caption := '...'; sHTML := GetPage('https://www.google.de/search?q='+edRisk.Text+'.'+edRiskDecimal.Text+'%20'+edAccountCurrency.Text+'%20to%20'+edQuotedCurrency.Text);
objRegEx := TRegEx.Create('', []); objMatch := objRegEx.Match(sHtml, '\>(.*)\<');
if objMatch.Success then begin lblLots.Caption := 'Ergebnis und so'; end else lblLots.Caption := 'ERROR'; end; |
Danke schonmal :)
Nersgatt - Do 22.09.16 15:41
Das liegt daran, dass der Mainthread keine Zeit hat, das Label neu zu zeichnen (er ist ja mit Deiner Procedure beschäftigt). Ein Application.ProcessMessages nach dem Ändern der Caption würde hier Abhilfe schaffen.
Danny87 - Do 22.09.16 16:09
Ah ja, genau das war's :) Ich wusste, es war irgendwas mit "proc" :D Vielen Dank! :)
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!