Entwickler-Ecke
Grafische Benutzeroberflächen (VCL & FireMonkey) - label caption während der laufzeit ändern
Krefti - Di 02.01.07 18:35
Titel: label caption während der laufzeit ändern
Abend ihr zusammen..
habn kleines problem mit meinem label..
ich möchte einen text in einem label 1,5 anzeigen lassen, dann eine halbe sekunde pause, dann den nächsten text..
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19:
| lblWoerter.Visible:=false; lblWort2.Visible:=false; lblWort3.Visible:=false; sleep(1000); lblWoerter.Caption:='Sonne'; lblWoerter.Font.Color:=clyellow; lblWoerter.Visible:=true; sleep(1500); lblWoerter.Visible:=false; sleep(500); lblWort2.Caption:='Meer'; lblWort2.font.color:=clblue; lblWort2.Visible:=true; sleep(1500); lblWort2.Visible:=false; sleep(500); lblWort3.Caption:='Gras'; lblwort3.font.color:=clgreen; lblWort3.Visible:=true; |
könnt ihr mir sagen, warum er alles durchläuft nix anzeigt und zum schluss dann des letzte anzeigt??? ich glaub ich steh grad voll aufm schlauch..
vielen dank scho mal..
jakobwenzel - Di 02.01.07 18:37
Machs entweder mit Application-ProcessMessages oder mit nem Timer.
Krefti - Di 02.01.07 18:39
könntest mir ma bitte eh beispiel gebbe???? danke
jakobwenzel - Di 02.01.07 18:40
nö, wozu gibts denn die Suchfunktion :roll:
jaenicke - Di 02.01.07 18:41
Wie wärs mal mit der Suche?? Mit Google?
Du schreibst einfach Application.ProcessMessages; nach der Zuweisung der neuen Caption hin, eben überall dort, wo die Änderung gemacht und sofort sichtbar werden soll.
Krefti - Di 02.01.07 18:43
oha..bist du immer so freundlich??? wär dir trotzdem verbunden, wenn du mir eins gebbe würdest..
jaenicke - Di 02.01.07 18:44
Wofür? Du findest zu diesem Befehl in der Delphi Hilfe (F1) und über die Suche massig Infos!
Und was du machen musst habe ich dir auch hingeschrieben.
Gausi - Di 02.01.07 18:49
[OT]
Es ist immer wieder toll, wenn in einem Programmierforum bei einer ganz spezifischen Programmierfrage auf Google verwiesen wird. :roll:
[/OT]
Zum Thema: Auch wenn es schon gesagt wurde: Füge an den Stellen im Code, an denen die Änderung wirksam werden soll, ein Application.ProcessMessages ein. Also z.B. vor jeder Sleep-Anweisung. Das bewirkt hier, dass die Nachricht "Hallo, liebes Programm, da muss ein Label neu gezeichnet werden" (weil sich die Caption verändert hat) verarbeitet wird. Ansonsten gehts nämlich erst in der Prozedur weiter, und erst danach wird einmal neu gezeichnet.
jaenicke - Di 02.01.07 18:55
Gausi hat folgendes geschrieben: |
[OT]
Es ist immer wieder toll, wenn in einem Programmierforum bei einer ganz spezifischen Programmierfrage auf Google verwiesen wird. :roll:
[/OT] |
Das habe ich geschrieben, weil man bei einer Suche nach Application.ProcessMessages sowohl hier im Forum als auch bei Google Beispiele und Erklärungen erhält. Genau wie in der OH.
Blackheart666 - Di 02.01.07 19:39
Hallo
Du kannst auch Refresh benutzen.
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22:
| lblWoerter.Visible:=false; lblWort2.Visible:=false; lblWort3.Visible:=false; sleep(1000); lblWoerter.Caption:='Sonne'; lblWoerter.Font.Color:=clyellow; lblWoerter.Visible:=true; lblWoerter.Refresh; sleep(1500); lblWoerter.Visible:=false; sleep(500); lblWort2.Caption:='Meer'; lblWort2.font.color:=clblue; lblWort2.Visible:=true; lblWort2.Refresh; sleep(1500); lblWort2.Visible:=false; sleep(500); lblWort3.Caption:='Gras'; lblwort3.font.color:=clgreen; lblWort3.Visible:=true; lblWort3.Refresh; |
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!