OleTarget.h
上传用户:dengkfang
上传日期:2008-12-30
资源大小:5233k
文件大小:2k
源码类别:

CA认证

开发平台:

Visual C++

  1. //////////////////////////////////////////////////////////////////////
  2. //
  3. // DropTarget.h: interface for the CDropTarget class.
  4. //
  5. //////////////////////////////////////////////////////////////////////
  6. #if !defined(AFX_MYDROPTARGET_H__04E739F2_5474_4A14_97CB_BDF035E0B8B2__INCLUDED_)
  7. #define AFX_MYDROPTARGET_H__04E739F2_5474_4A14_97CB_BDF035E0B8B2__INCLUDED_
  8. #if _MSC_VER > 1000
  9. #pragma once
  10. #endif // _MSC_VER > 1000
  11. #include "afxole.h"
  12. #define DROPM_DROPOK WM_USER + 200  //拖动结束
  13. //////////////////////////////////////////////////////////////////////
  14. // CDropTarget implements a drop target for the MultiFiler dialog.
  15. // I was also messing around with the IDropTargetHelper stuff in 
  16. // Win2K, which lets the shell draw the nifty shaded drag image when
  17. // you drag into the dialog.  If you're using 9x or NT 4, that stuff
  18. // is disabled.
  19.  
  20. struct IDropTargetHelper;   // forward reference, in case the latest PSDK isn't installed.
  21. class CDropTarget : public COleDropTarget  
  22. {
  23. public:
  24. BOOL Reg(CWnd * pWnd, char * lpstrClipbrdFormat)
  25. {
  26. m_uCustomClipbrdFormat = RegisterClipboardFormat ( _T(lpstrClipbrdFormat));
  27. return Register(pWnd);
  28. }
  29. UINT GetClipbrdFormat()
  30. {
  31. return m_uCustomClipbrdFormat;
  32. }
  33.     CDropTarget();
  34. virtual ~CDropTarget();
  35. protected:
  36. CStringArray m_StrArray;
  37. UINT m_uCustomClipbrdFormat;
  38.     IDropTargetHelper* m_piDropHelper;
  39.     bool               m_bUseDnDHelper;
  40.     BOOL ReadHdropData ( COleDataObject* pDataObject );
  41. DROPEFFECT OnDragEnter ( CWnd* pWnd, COleDataObject* pDataObject,
  42.                      DWORD dwKeyState, CPoint point );
  43. DROPEFFECT OnDragOver ( CWnd* pWnd, COleDataObject* pDataObject,
  44.                     DWORD dwKeyState, CPoint point );
  45. BOOL OnDrop (CWnd* pWnd, COleDataObject* pDataObject,
  46.           DROPEFFECT dropEffect, CPoint point );
  47. void OnDragLeave (CWnd* pWnd);
  48. };
  49. #endif // !defined(AFX_MYDROPTARGET_H__04E739F2_5474_4A14_97CB_BDF035E0B8B2__INCLUDED_)