COleDataSource::DoDragDrop
データ ソースに対してドラッグ アンド ドロップ操作を行うには、DoDragDrop メンバー関数を呼び出します。通常は、CWnd::OnLButtonDown ハンドラーの処理で行います。
DROPEFFECT DoDragDrop(
DWORD dwEffects = DROPEFFECT_COPY|DROPEFFECT_MOVE|DROPEFFECT_LINK,
LPCRECT lpRectStartDrag = NULL,
COleDropSource* pDropSource = NULL
);
パラメーター
dwEffects
このデータ ソースで許されるドラッグ アンド ドロップ操作。 次の値を 1 つ以上指定できます。DROPEFFECT_COPY コピー操作を実行できます。
DROPEFFECT_MOVE 移動操作を実行できます。
DROPEFFECT_LINK ドロップされたデータと元のデータとのリンクを確立できます。
DROPEFFECT_SCROLL ドラッグ スクロール操作を実行できることを示します。
lpRectStartDrag
ドラッグを実際に開始する位置を定義する四角形へのポインター。 詳細については、「解説」を参照してください。pDropSource
ドロップ ソースへのポインター。 NULL を指定したときは、COleDropSource の既定の実装が使われます。
戻り値
ドラッグ アンド ドロップの操作で生成されたドロップの結果を返します。ユーザーが指定された四角形から出る前にマウス ボタンを離したため、操作が始まらなかった場合は、DROPEFFECT_NONE を返します。
解説
ドラッグ アンド ドロップ操作はすぐには始まりません。 マウス カーソルが lpRectStartDrag で指定された四角形から離れるまで、または指定されたミリ秒数を経過するまで待機します。 lpRectStartDrag が NULL のとき、四角形のサイズは 1 ピクセルです。
遅延時間を指定するには、レジストリ キーを設定します。 遅延時間を変更するには、CWinApp::WriteProfileString または CWinApp::WriteProfileInt を呼び出します。 遅延時間が指定されていない場合、既定値の 200 ミリ秒が使用されます。 ドラッグ遅延時間は、以下の場所に保存されます。
Windows NT HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\NT\CurrentVersion\IniFileMapping\win.ini\Windows\DragDelay
Windows 3.x WIN.INI ファイルの [Windows] セクション。
Windows 95/98 WIN.INI のキャッシュ。
ドラッグ遅延時間をレジストリまたは .INI ファイルに保存する方法については、Windows SDK の「WriteProfileString」を参照してください。
詳細についてを参照してください「ドラッグ アンド ドロップ:ドロップ ソースの実装。
必要条件
**ヘッダー:**afxole.h