CView::OnDragEnter
更新 : 2007 年 11 月
ドロップ ターゲット ウィンドウの非スクロール領域にマウスが最初に入ったとき、フレームワークが呼び出します。
virtual DROPEFFECT OnDragEnter(
COleDataObject* pDataObject,
DWORD dwKeyState,
CPoint point
);
パラメータ
pDataObject
ビューのドロップ領域にドラッグされた COleDataObject へのポインタ。dwKeyState
修飾子キーの状態を保持します。MK_CONTROL、MK_SHIFT、MK_ALT、MK_LBUTTON、MK_MBUTTON、および MK_RBUTTON をいくつでも組み合わせて指定できます。point
ビューのクライアント領域からの現在のマウスの相対位置。
戻り値
DROPEFFECT 列挙型からの値を返します。この値は、ユーザーがこの位置にオブジェクトをドロップしたときに発生するドロップの型を示します。一般的にドロップの型は、dwKeyState で示される現在のキー状態に依存します。DROPEFFECT 値に割り当てられる標準のキー状態を次に示します。
DROPEFFECT_NONE データ オブジェクトは、このウィンドウにドロップすることができません。
MK_CONTROL | MK_SHIFT に対して DROPEFFECT_LINK オブジェクトとオブジェクトのサーバー間にリンクを作成します。
MK_CONTROL に対して DROPEFFECT_COPY ドロップされたオブジェクトのコピーを作成します。
MK_ALT に対して DROPEFFECT_MOVE ドロップされたオブジェクトのコピーを作成し、元のオブジェクトを削除します。一般にこれは既定のドロップ操作の結果で、ビューがデータ オブジェクトを受け取ることができます。
詳細については、MFC 上級サンプルの「OCLIENT サンプル : ビジュアル編集コンテナ アプリケーションの説明」を参照してください。
解説
既定の実装では何もせず、DROPEFFECT_NONE を返します。
OnDragOver メンバ関数を将来呼び出すときの準備として、この関数をオーバーライドします。データ オブジェクトから要求されるすべてのデータは、後で OnDragOver メンバ関数で使うためにこの時点で取得します。また、ユーザーがドラッグ操作中であることがわかるような表示をするために、この時点でビューを更新する必要があります。詳細については、「ドラッグ アンド ドロップ : ドロップ ターゲットの実装」を参照してください。
必要条件
ヘッダー : afxwin.h