CMFCTabDropTarget クラス
タブ コントロールと OLE ライブラリの間の通信メカニズムを提供します。
構文
class CMFCTabDropTarget : public COleDropTarget
メンバー
パブリック コンストラクター
| 名前 | 説明 |
|---|---|
CMFCTabDropTarget::CMFCTabDropTarget |
既定のコンストラクターです。 |
パブリック メソッド
| 名前 | 説明 |
|---|---|
| CMFCTabDropTarget::OnDragEnter | ユーザーがオブジェクトをタブ ウィンドウにドラッグすると、フレームワークによって呼び出されます。 ( COleDropTarget::OnDragEnter をオーバーライドします)。 |
| CMFCTabDropTarget::OnDragLeave | ユーザーがフォーカスがあるタブ ウィンドウの外側にオブジェクトをドラッグすると、フレームワークによって呼び出されます。 ( COleDropTarget::OnDragLeave をオーバーライドします)。 |
| CMFCTabDropTarget::OnDragOver | ユーザーがフォーカスがあるタブ ウィンドウにオブジェクトをドラッグすると、フレームワークによって呼び出されます。 ( COleDropTarget::OnDragOver をオーバーライドします)。 |
| CMFCTabDropTarget::OnDropEx | ユーザーがドラッグ操作の最後にマウス ボタンを離すと、フレームワークによって呼び出されます。 ( COleDropTarget::OnDropEx をオーバーライドします)。 |
| CMFCTabDropTarget::Register | OLE ドラッグ アンド ドロップ操作のターゲットとしてコントロールを登録します。 |
注釈
このクラスは、 クラスへのドラッグ アンド ドロップのサポートを提供 CMFCBaseTabCtrl します。 アプリケーションで AfxOleInitCMFCBaseTabCtrl 関数を使用して OLE ライブラリを初期化する場合、オブジェクトはドラッグ アンド ドロップ操作のために自身を登録します。
クラス CMFCTabDropTarget は、ドラッグ操作がアクティブなときにカーソルの下にあるタブを作成することで、その基本クラスを拡張します。 ドラッグ アンド ドロップ操作の詳細については、「OLE ドラッグ アンド ドロップ 」を参照してください。
例
CMFCTabDropTarget オブジェクトを構築して、その Register メソッドを使用する方法を、次の例に示します。
HWND hWndTab = NULL;
CBasePane *basePane = new CBasePane();
CMFCBaseTabCtrl *pTabParent = basePane->GetParentTabWnd(hWndTab);
CMFCTabDropTarget *dropTarget = new CMFCTabDropTarget();
dropTarget->Register(pTabParent);
継承階層
要件
ヘッダー: afxbasetabctrl.h
CMFCTabDropTarget::OnDragEnter
ユーザーがオブジェクトをタブ ウィンドウにドラッグすると、フレームワークによって呼び出されます。
virtual DROPEFFECT OnDragEnter(
CWnd* pWnd,
COleDataObject* pDataObject,
DWORD dwKeyState,
CPoint point);
パラメーター
pWnd
[入力] 使用されていません。
pDataObject
[in]ユーザーがドラッグするオブジェクトへのポインター。
dwKeyState
[in]修飾子キーの状態を格納します。 これは、MK_CONTROL、MK_SHIFT、MK_ALT、MK_ALT、MK_LBUTTON、MK_MBUTTON、MK_RBUTTON の任意の数の組み合わせです。
point
[in]クライアント座標でのカーソルの位置。
戻り値
ポイントで指定された位置にドロップが発生した場合に発生する 効果。 次の 1 つ以上を指定できます。
DROPEFFECT_NONE
DROPEFFECT_COPY
DROPEFFECT_MOVE
DROPEFFECT_LINK
DROPEFFECT_SCROLL
注釈
このメソッドは、DROPEFFECT_NONEフレームワークがカスタマイズ モードではない場合、またはクリップボードのデータ形式が使用できない場合に、このメソッドを返します。 それ以外の場合は、指定されたパラメーターを使用して を呼び出した CMFCBaseTabCtrl::OnDragEnter 結果を返します。
カスタマイズ モードの詳細については、「 CMFCToolBar::IsCustomizeMode」を参照してください。 クリップボードのデータ形式の詳細については、「 COleDataObject::IsDataAvailable」を参照してください。
CMFCTabDropTarget::OnDragLeave
ユーザーがフォーカスがあるタブ ウィンドウの外側にオブジェクトをドラッグすると、フレームワークによって呼び出されます。
virtual void OnDragLeave(CWnd* pWnd);
パラメーター
pWnd
[入力] 使用されていません。
注釈
このメソッドは、 メソッドを呼 CMFCBaseTabCtrl::OnDragLeave び出してドラッグ操作を実行します。
CMFCTabDropTarget::OnDragOver
ユーザーがフォーカスがあるタブ ウィンドウにオブジェクトをドラッグすると、フレームワークによって呼び出されます。
virtual DROPEFFECT OnDragOver(
CWnd* pWnd,
COleDataObject* pDataObject,
DWORD dwKeyState,
CPoint point);
パラメーター
pWnd
[入力] 使用されていません。
pDataObject
[in]ユーザーがドラッグするオブジェクトへのポインター。
dwKeyState
[in]修飾子キーの状態を格納します。 これは、MK_CONTROL、MK_SHIFT、MK_ALT、MK_ALT、MK_LBUTTON、MK_MBUTTON、MK_RBUTTON の任意の数の組み合わせです。
point
[in]クライアント座標でのマウス ポインターの位置。
戻り値
ポイントで指定された位置にドロップが発生した場合に発生する 効果。 次の 1 つ以上を指定できます。
DROPEFFECT_NONE
DROPEFFECT_COPY
DROPEFFECT_MOVE
DROPEFFECT_LINK
DROPEFFECT_SCROLL
注釈
このメソッドは、ドラッグ操作がアクティブなときにカーソルの下にあるタブを作成します。 ツール バー DROPEFFECT_NONEカスタマイズ モードではない場合、またはクリップボードのデータ形式が使用できない場合は、この値が返されます。 それ以外の場合は、指定されたパラメーターを使用して を呼び出した CMFCBaseTabCtrl::OnDragOver 結果を返します。
カスタマイズ モードの詳細については、「 CMFCToolBar::IsCustomizeMode」を参照してください。 クリップボードのデータ形式の詳細については、「 COleDataObject::IsDataAvailable」を参照してください。
CMFCTabDropTarget::OnDropEx
ドラッグ操作の終了時にユーザーがマウスボタンを放すと、フレームワークによって呼び出されます。
virtual DROPEFFECT OnDropEx(
CWnd* pWnd,
COleDataObject* pDataObject,
DROPEFFECT dropEffect,
DROPEFFECT dropList,
CPoint point);
パラメーター
pWnd
[入力] 使用されていません。
pDataObject
からユーザーがドラッグするオブジェクトへのポインター。
dropEffect
から既定のドロップ操作。
ドロップ
[入力] 使用されていません。
point
からクライアント座標でのマウスポインターの位置。
戻り値
結果として得られるドロップ効果。 次の1つまたは複数を指定できます。
DROPEFFECT_NONE
DROPEFFECT_COPY
DROPEFFECT_MOVE
DROPEFFECT_LINK
DROPEFFECT_SCROLL
注釈
このメソッドは、ツールバーフレームワークがカスタマイズモードで、クリップボードのデータ形式が使用可能な場合にを呼び出し CMFCBaseTabCtrl::OnDrop ます。 の呼び出し CMFCBaseTabCtrl::OnDrop が0以外の値を返す場合、このメソッドは dropeffectによって指定された既定のドロップ効果を返します。 それ以外の場合、このメソッドは DROPEFFECT_NONE を返します。 ドロップ効果の詳細については、「 COleDropTarget:: OnDropEx」を参照してください。
カスタマイズモードの詳細については、「 Cmfctoolbar:: Iscustomization emode」を参照してください。 クリップボードのデータ形式の詳細については、「 COleDataObject:: IsDataAvailable」を参照してください。
CMFCTabDropTarget:: Register
コントロールを、OLE ドラッグアンドドロップ操作の対象にできるコントロールとして登録します。
BOOL Register(CMFCBaseTabCtrl *pOwner);
パラメーター
pOwner
からドロップ先として登録するタブコントロール。
戻り値
登録が成功した場合は0以外の。それ以外の場合は0です。
注釈
このメソッドは、 COleDropTarget:: register を呼び出して、ドラッグアンドドロップ操作のコントロールを登録します。