hi Grigory,
my last Message was not clear
it "seems" that TIMER did not work when "Set" in Main when have a ActiveX
i need to use TIMER "in" CLASS where i can have Multi-Instance
Code: Select all
oVlc := TVlc() :New( GetProperty( oWin, oControl, "Object" ), oWin )
METHOD New( oControl, oWin ) CLASS TVlc
LOCAL cTimer := "Timer_VLC"
...
::oWin := oWin
...
::lRun := .F.
DEFINE TIMER &cTimer of &oWin INTERVAL 100 ACTION ::ShowRunThread()
Code: Select all
METHOD Destroy() CLASS TVlc
IF IsControlDefined( Timer_VLC, ::oWin )
DoMethod( ::oWin, "Timer_VLC", "Release" )
ENDIF
Code: Select all
METHOD ShowRunThread() CLASS TVlc
IF ::lRun = .T.
nPlayState := ::State()
...
CASE nPlayState = VLC_INPUT_STATE_PLAYING
nDuration := INT( ::GetLength() / 1000 )
IF !EMPTY( nDuration )
IF nPosi >= nDuration - 1
::Stop()
::lRun = .F.
IF SP_Loop() = .T.
::SetTime( 0 )
::Play()
ELSEIF SP_Endless() = .T.
// SENDKEY( VK_NEXT )
::Play_Next()
ENDIF