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);

継承階層

CObject

CCmdTarget

COleDropTarget

CMFCTabDropTarget

要件

ヘッダー: 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 を呼び出して、ドラッグアンドドロップ操作のコントロールを登録します。

関連項目

階層図
クラス
OLE のドラッグ アンド ドロップ