goOleHandler= getScreenOleHandler() _SCREEN.OLEDROPMODE = 1 _SCREEN.OLEDROPEFFECTS=1 =BINDEVENT(_SCREEN,"OLEDragDrop",goOleHandler,"oledragdrop") =BINDEVENT(_SCREEN,"OLEDragOver",goOleHandler,"oledragover") function getScreenOleHandler() RETURN CREATEOBJECT("ScreenOleDrop") DEFINE CLASS ScreenOleDrop AS custom PROCEDURE OLEDRAGDROP LPARAMETERS oDataObject, nEffect, nButton, nShift, nXCoord, nYCoord TRY IF oDataObject.GETFORMAT(15) && list of files from explorer LOCAL laFiles(1) oDataObject.GETDATA(15,@laFiles) FOR EACH lcFile IN laFiles DO FORM IMPORT.scx WITH lcFile NEXT ENDIF CATCH TO oe =postmortem(oe) ENDTRY PROCEDURE OLEDRAGOVER LPARAMETERS oDataObject, nEffect, nButton, nShift, nXCoord, nYCoord, nState TRY IF oDataObject.GETFORMAT(15) THIS.OLEDROPHASDATA = 1 THIS.OLEDROPEFFECTS = 4 nEffect = 4 ENDIF CATCH TO oe =postmortem(oe) ENDTRY ENDDEFINE