0

CTreeCtrl の特定のノードでドラッグ アンド ドロップを無効にする方法はありますか?

ノードを同じツリー内の同じノードの子にドラッグしたり、同じノードまたはその子の 1 つにリンクされているリストビューにノードをドラッグしたりしないようにしたいと思います。

4

1 に答える 1

1

マウス移動ハンドラーでドロップターゲットをどのように処理するかによって異なります。

機能を防ぐことはできませんTVN_BEGINDRAG。ただし、アイテムをまったくドラッグしない場合は、常にSetDropTarget(NULL)マウス移動ハンドラーで使用し、ドラッグが停止した場合は何もしません。

アイテムのドラッグが許可されている場合は、ターゲットが許可されているかどうかを確認するだけです。HitTest目的のアイテムを見つけるために使用し、ここでドロップが許可されているかどうかを確認できます。もう一度使用しますSetDropTarget。したがって、ユーザーは何が許可されているかを確認できます。

もう 1 つの方法は、このサンプルのようにOle ドラッグ & ドロップ機能を実装することです。

于 2016-04-28T08:46:34.237 に答える