sGauge does not show animation

Viewing 11 posts - 1 through 11 (of 11 total)
  • Author
    Posts
  • #33567
    HeDiBo
    Participant

    Animation in TsGauge is based on timer messages.

    The timer used is a simple TTimer. Problem with TTimer is that it only works if there are messages being processed.

    So, a heavy processor intensive loop, with sporadic gauge updates, would never show the animation. This is an example of where the ThreadedTimer would come in handy.

    I tried it, but more work is needed: the ThreadedTimer in itself will not show the animation when no other windows messages arrive. I don't know what the cure for it is.

    #41723
    emailaya
    Participant

    same for progressbar in marquee mode

    #41728
    Support
    Keymaster

    Thank you, I'll be thinking about this solution.

    #41783
    LC!
    Participant

    Hi Serge,

    it seems that in 6.56 the animation of sGauge does not work at all. Do you know about that?

    #41797
    LC!
    Participant

    Animation of sGauge was not shown with skin “Vienna” in 6.56. Solved in 6.57.

    #41803
    HeDiBo
    Participant

    Because animation is only shown when the message queue is handled, you could say that animation is totally absent: when the message queue is handled, you mostly are awaiting user input. That's exactly when the gauge should not be animated, because then it would suggest that the program is still working.

    #41851
    Support
    Keymaster

    I'm thinking about new animations now, but it's not easy and ThreadedTimer have some troubles which must be fixed firstly..

    #41883
    HeDiBo
    Participant

    QUOTE (Support @ Mar 10 2010, 12:24 PM) <{POST_SNAPBACK}>
    ThreadedTimer have some troubles which must be fixed firstly..

    Maybe this article could be of use for implementation of a better Threaded Timer: Using Waitable Timers with an Asynchronous Procedure Call

    The Jedi library (JEDI Project) has a component TJclWaitableTimer that implements the method SetTimerApc for asynchronous calls using the Windows Waitable timer constructs. As you know, the Jedi library is open source.

    #41890
    Support
    Keymaster

    Thank you! I will research it

    #38426
    HeDiBo
    Participant

    The problem with the threaded timer may stem from this bug in the VCL:

    Deadlock in TThread.Synchronize

    The following problem may also have something to do with it:

    Synchronize and WaitFor methods of TThread can lead to a DeadLock in logically correct applications

    #41979
    Support
    Keymaster

    Thank you, Dick!

Viewing 11 posts - 1 through 11 (of 11 total)
  • You must be logged in to reply to this topic.