Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Gif- Animation weiterlaufen lassen (https://www.delphipraxis.net/134492-gif-animation-weiterlaufen-lassen.html)

stev-e87 23. Mai 2009 07:06


Gif- Animation weiterlaufen lassen
 
Hallo Community,

ich hänge zur Zeit an einem kleinen Problem fest, das sich wie folgt darstellt: Es soll mittels IdICMPClient ein Ping ausgelöst werden. Da dieser ja bekanntlich auch mal ein zwei Sekunden dauern kann, möchte ich in dieser Zeit eine Warteanimation laufen lassen (JVGifAnimator). Diese "bewegt" sich anfangs auch gut, während der Ausführung des Pings kommt es dann aber zu einem Zustand, in dem man keine Komponenten auf der Form anklicken kann, die Maus wird zur Sanduhr und das Formular benimmt sich, als würde es keine Rückmeldung geben. Dementsprechend bleibt dann auch die Animation stehen.
Hatte schon überlegt das Ganze in eine
Try
Repeat
application.processmessages;
...
Until
Finally
Abfrage zu packen, finde nur keine passende Bedingung für die Repeat- Schleife. Hat jemand eine Idee???

Gruß

Gehstock 23. Mai 2009 08:45

Re: Gif- Animation weiterlaufen lassen
 
idAntiFreeze aus der Komponenten Liste könnte da Helfen
etwas von deinem Code währe auch hilfreich

stev-e87 23. Mai 2009 11:25

Re: Gif- Animation weiterlaufen lassen
 
Danke, werde es mal ausprobieren.

Der Code war ansonsten dieser:

Delphi-Quellcode:
 
//Statuszeile einblenden und beschriften
  Ani_Connect.Visible:=True;
  Lbl_Action.Caption:=Msg_Action_Ping;
  IcmpClient.Ping(); //Hier "hängt" er sich auf
  Application.ProcessMessages;

mkinzler 23. Mai 2009 11:26

Re: Gif- Animation weiterlaufen lassen
 
Dann musst du den Ping in einem gesonderten Thread ausführen


Alle Zeitangaben in WEZ +1. Es ist jetzt 14:52 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz