wait dialog

Post Reply
User avatar
Maverich
Posts: 31
Joined: Sun Oct 09, 2005 8:29 pm
Location: Prato, Italia

wait dialog

Post by Maverich »

I'd like to have a dialog with a TAnimate object (example the copy files di windows) during massive dbf operations. The animation doesn't start, the only way to make it move is placing various sysrefresh() during dbf operations. Is there any other way?

this is the code:

Code: Select all

#include "fivewin.ch"

function main()
	local a
	
	attendi(.t.)
	inkey(3)  // this way doesn't move
	attendi(.f.)
	
	attendi(.t.)
	for a=1 to 200  // this way it moves!!!
		inkey(.01)
		sysrefresh()
	next
	attendi(.f.)
return nil

FUNCTION Attendi( lStatus )
	STATIC oDlg
	LOCAL oAnimate

	IF lStatus .AND. oDlg = NIL
		DEFINE dialog oDlg resource "Main"
		oAnimate = TAnimate():REDEFINE( 160, oDlg )

		ACTIVATE dialog oDlg NOWAIT centered ;
		ON INIT ( , oAnimate:CopyFiles(), oAnimate:Play() )
	ELSE
	oDlg:END()
	oDlg = NIL
ENDIF

RETURN NIL
regards
riccardo
Riccardo
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Post by Antonio Linares »

Riccardo,

SysRefresh() is required in order to let Windows process pending messages.
regards, saludos

Antonio Linares
www.fivetechsoft.com
Post Reply