Level Extreme platform
Subscription
Corporate profile
Products & Services
Support
Legal
Français
Status forms - how to reliably refresh the display
Message
General information
Forum:
Visual FoxPro
Category:
Forms & Form designer
Miscellaneous
Thread ID:
00703498
Message ID:
00703668
Views:
17
This message has been marked as a message which has helped to the initial question of the thread.
Hi, Paul!

Are you using VFP7? In VFP7 and in all builds (service packs) for it there is a serious omission - DOEVENTS does not works as it worked in VFP6. Also in VFP6 DOEVENTS is slow without workarounds.

In my programs I usually do following:
_VFP.AutoYield = .T.
...start a loop. This usually takes a few commands enough to refresh everything automatically

    _VFP.AutoYield = .F.
    ... make a few step of loop, say, 50

    ... if 50 steps made
        _VFP.AutoYield = .T.
        ... show progress and do other calculations
   ... end of loop calculations
... continue loop
When AutoYield is .T., VFP refreshes many things automatically as code lines execute. If you have a few code lines there, it always refreshes screens correctly. Then you _VFP.AutoYield is set back to .F. to have better performance for next 50 steps of loop.

I used this in VFP6, though this might also help in VFP7, ince DOEVENTS does not works ok.

I also reported this to MS as a bug for VFP7, but I do not know if it will be fixed in VFP8.

HTH.

>>Did you try to add DOEVENTS?
>>
>
>Yep.
Vlad Grynchyshyn, Project Manager, MCP
vgryn@yahoo.com
ICQ #10709245
The professional level of programmer could be determined by level of stupidity of his/her bugs

It is not appropriate to say that question is "foolish". There could be only foolish answers. Everybody passed period of time when knows nothing about something.
Previous
Next
Reply
Map
View

Click here to load this message in the networking platform