![]() |
label.caption alle 0,5sec refreshen lassen ?
ich lasse mir von einer webseite mittels pos uns posex einen gewissen text in einem label wiedergeben. dieser ändert sich jedoch kontinuierlich.
jetzt gibt es zwar die möglichkeit, mit label3.refresh zu aktualisieren, jedoch geschieht dies dann nur 1x. gibts ne möglichkeit, dieses im extremfall alle 0,5 sec wiederholen zu lassen ? |
Re: label.caption alle 0,5sec refreshen lassen ?
Mittels der Komponente TTimer kannst Du alle X Millisekunden ein Event generieren, in dem Du dann das Label aktualisieren kannst. Der Vollständigkeit halber sei nur erwähnt, dass Du Dich bei Windows so ohne Weiteres nicht auf exakte Zeitintervalle verlassen kannst, da es kein Echtzeitbetriebssystem ist. Es wird also darauf hinauslaufen, dass Du "etwa" alle halbe Sekunde einen Refresh bekommen wirst.
|
Re: label.caption alle 0,5sec refreshen lassen ?
Warum aktualisierst Du das Label nicht gleich wenn die Daten von der Website gelesen werden und sich geändert haben?
|
Re: label.caption alle 0,5sec refreshen lassen ?
wenn ich mich einlogge, werden die daten in label5.caption ja aktualisiert. bin ich dann aber 5 minuten online, sind die daten in label5.caption bereits alt und nutzlos.
somit muss ich alle paar sekunden aktualisieren lassen um ständig die aktuellen daten zu sehen |
Re: label.caption alle 0,5sec refreshen lassen ?
Das ist schon klar, nur kannst Du das Label refreshen sooft Du willst - wenn sich der Inhalt net ändert kann auch nix anderes angezeigt werden.
Du musst natürlich den Inhalt der Website lesen und dann dem Label zuweisen, dann hat sich das mit dem refresh erledigt. Allerdings halte ich nix davon alle 0,5s von einer Seite die Daten zu holen - vielleicht alle 30 s. [Edit] Du hast ja sicher schon eine Prozedur\Funktion zum einlesen der Daten. Diese kannst Du dann wie Daniel bereits sagte Timergesteuert aufrufen. |
Re: label.caption alle 0,5sec refreshen lassen ?
Zitat:
Bzw. nur durch Label3.Refresh wird sich doch der Text nicht ändern? :gruebel: Zitat:
Da dieses doch schon etwas Traffic verursacht. |
Re: label.caption alle 0,5sec refreshen lassen ?
Die Abfrage der Website (bei dem kurzen Intervall) würde ich auch über einen Thread realisieren.
Wenn die Abfrage mal länger dauert, dann blockierst Du nicht dein ganzes Programm. Den Refresh des Labels erledigst Du dann entweder über einen Timer der die Daten vom Thread abholt (als Hinweis sei dazu TCriticalSection genannt) oder du lässt deinen Thread einen Event (mit Syncronize) feuern, natürlich nur, wenn wirklich neue Informationen vorliegen, und darüber dein Label füllen, welches damit automatisch refresht wird. Die Event-Steuerung ist etwas aufwändiger aber auch schonender bei den Ressourcen, da ein Neuzeichnen des Labels nur bei einer wirklichen Änderung erfolgt. cu Oliver Zitat:
|
Re: label.caption alle 0,5sec refreshen lassen ?
naja ihr habt schon recht... der refresh ist ja immo nur alle 30 sek ;) und es müssen keine genauen 30sek sein ;)
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:16 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