COleDataSource::DoDragDrop

DROPEFFECT DoDragDrop( DWORD dwEffects = DROPEFFECT_COPY|DROPEFFECT_MOVE|DROPEFFECT_LINK, LPCRECT lpRectStartDrag = NULL, COleDropSource* pDropSource = NULL );

Return Value

Drop effect generated by the drag-and-drop operation; otherwise DROPEFFECT_NONE if the operation never begins because the user released the mouse button before leaving the supplied rectangle.

Parameters

dwEffects

Drag-and-drop operations that are allowed on this data source. Can be one or more of the following:

lpRectStartDrag

Pointer to the rectangle that defines where the drag actually starts. For more information, see the following Remarks section.

pDropSource

Points to a drop source. If NULL then a default implementation of COleDropSource will be used.

Remarks

Call the DoDragDrop member function to perform a drag-and-drop operation for this data source, typically in an CWnd::OnLButtonDown handler.

The drag-and-drop operation does not start immediately. It waits until the mouse cursor leaves the rectangle specified by lpRectStartDrag or until a specified number of milliseconds have passed. If lpRectStartDrag is NULL, the size of the rectangle is one pixel.

The delay time is specified by a registry key setting. You can change the delay time by calling CWinApp::WriteProfileString or CWinApp::WriteProfileInt. If you do not specify the delay time, a default value of 200 milliseconds is used. Drag delay time is stored as follows:

For more information about how drag delay information is stored in either the registry or the .INI file, see ::WriteProfileString in the Platform SDK.

For more information, see the article Drag and Drop: Implementing a Drop Source in Visual C++ Programmer’s Guide.

COleDataSource OverviewClass MembersHierarchy Chart

See Also   COleDropSource::OnBeginDrag, COleDropSource