Probleme :
Code: Alles auswählen
PROCEDURE MAIN
...
oEdit := Cutter():New():Create()
...
oPlayer := XbPlayer():New( AppDesktop(), oEdit,;
{ oEdit:CurrentPos()[1]+220,oEdit:CurrentPos()[2]+200 },;
{360+4,322+4})
oPlayer:Create()
oPlayer:oWMP:setPosandSize({0,0},oPlayer:drawingArea:currentSize())
...
oEdit:oWMP := oPlayer:oWMP
Code: Alles auswählen
METHOD XbPlayer:create( oParent, oOwner, aPos, aSize, aPP, lVisible )
::XbpDialog:create( oParent, oOwner, aPos, aSize, aPP, lVisible )
::XbpDialog:drawingArea:Resize := {|x,y,o| ::Resize(x,y) }
::oWMP := XbpActiveXControl():new( ::drawingArea, , {0,0}, {352,288} )
::oWMP:CLSID := "{6BF52A52-394A-11d3-B153-00C04F79FAA6}"
::oWMP:TabStop := .T.
::oWMP:create()
RETURN self
METHOD XbPlayer:Resize( aOldSize, aNewSize )
LOCAL aSize
IF aOldSize[1] == 0 .AND. aOldSize[2] == 0 // New line
aOldSize := aNewSize // New line
ELSEIF aNewSize[1] == 0 .OR. aNewSize[2] == 0 // New line
RETURN // New line
// NEED resize same Size
* ELSEIF aNewSize[1] == aOldSize[1] .AND. aNewSize[2] == aOldSize[2]
* RETURN
ENDIF // New line
::oWMP:setPosAndSize( {0,0}, ::drawingArea:currentsize() )
aSize := ::oWMP:CurrentSize()
::setTitle("WMPlayer "+LTRIM(STR(aSize[1]))+" x "+;
LTRIM(STR(aSize[2]))+" "+LTRIM(STR(RECNO())) )
RETURN NIL
Code: Alles auswählen
METHOD oEdit:SnapShot2DBF()
...
// geht NICHT
PostAppEvent(xbeP_Resize,{1,2},{360,322}, ::oWMP:setparent() )
// bringt es auch nicht
aSize := ::oWMP:currentsize()
aPSize := ::oWMP:setparent():currentsize()
::oWMP:setparent():setSize({aPSize[1]+1,aPSize[2]+1})
::oWMP:setPosandSize({0,0},::drawingArea:currentSize())
// auch das NICHT
aPosi := ::oWMP:setparent():currentpos()
aSize := ::oWMP:setparent():currentsize()
::oWMP:setparent():setPosAndSize( aPosi ,{aSize[1]+1,aSize[2]+1} )
gruss by OHR
Jimmy