COleDropTarget::OnDragOver

调用由结构,当光标拖动到窗口。

virtual DROPEFFECT OnDragOver(
   CWnd* pWnd,
   COleDataObject* pDataObject,
   DWORD dwKeyState,
   CPoint point 
);

参数

  • pWnd
    指向窗口将关闭。

  • pDataObject
    指向包含要放置的数据的数据对象。

  • dwKeyState
    包含修改键的状态。这是组合的任意数量以下操作: MK_CONTROLMK_SHIFTMK_ALTMK_LBUTTONMK_MBUTTONMK_RBUTTON

  • point
    在工作区坐标包含光标的当前位置。

返回值

将发生的影响,如果放置在 point指定的位置已尝试。它可以是一个或多个以下各项:

  • DROPEFFECT_NONE 中放置不允许。

  • DROPEFFECT_COPY 中复制操作将执行。

  • DROPEFFECT_MOVE 的移动操作将执行。

  • 从放置的数据的DROPEFFECT_LINK 将链接到原始数据将建立的。

  • DROPEFFECT_SCROLL 在目标指示拖动滚动操作将发生或发生。

备注

在窗口中应重写此功能允许放置操作发生。此的默认实现函数调用 CView::OnDragOver,默认情况下返回 DROPEFFECT_NONE。由于此功能在拖放操作过程中会频繁调用,应尽可能对它进行优化。

有关更多信息,请参见 Windows SDK的 IDropTarget::DragOver

示例

DROPEFFECT COleContainerView::OnDragOver(COleDataObject* pDataObject, 
   DWORD dwKeyState, CPoint point)
{
   UNREFERENCED_PARAMETER(pDataObject);
   UNREFERENCED_PARAMETER(point);

   DROPEFFECT de = DROPEFFECT_NONE;
   //Determine the type of operation
   if((dwKeyState & MK_SHIFT) && (dwKeyState & MK_CONTROL))
      de = DROPEFFECT_LINK;
   else if(dwKeyState &  MK_CONTROL)
      de = DROPEFFECT_COPY;
   else if(dwKeyState & MK_SHIFT)
      de = DROPEFFECT_MOVE;
   return de;
}

要求

Header: afxole.h

请参见

参考

COleDropTarget选件类

层次结构图

COleDropTarget::OnDragEnter

Windows 服务应用程序

COleDropTarget::OnDrop

COleDropTarget::OnDropEx