ウィンドウなしのコントロールを OLE ドラッグ アンド ドロップ操作のターゲットにする場合、GetWindowlessDropTarget をオーバーライドします。
virtual IDropTarget* GetWindowlessDropTarget( );
戻り値
オブジェクトの IDropTarget インターフェイスへのポインター。 このオブジェクトはウィンドウを持たないので、ウィンドウなしのオブジェクトは IDropTarget インターフェイスを登録できません。 ドラッグ アンド ドロップを実現するには、ウィンドウなしのオブジェクトはインターフェイスを実装して、それを GetWindowlessDropTarget に返します。
解説
通常これには、コントロールのウィンドウをドロップ ターゲットとして登録する必要があります。 しかし、コントロールはそれ自身のウィンドウを持たないので、コンテナー自身のウィンドウをドロップ ターゲットとして使用します。 コントロールは、IDropTarget インターフェイスの実装を提供するだけで十分です。コンテナーは、このインターフェイスに対して、適切なときに呼び出しを行います。 次に例を示します
IDropTarget* CMyAxCtrl::GetWindowlessDropTarget()
{
m_xDropTarget.AddRef();
return &m_xDropTarget;
}
必要条件
**ヘッダー:**afxctl.h