TreeviewのノードをD&Dで動かしたい
Posted: 2016年2月04日(木) 22:17
最近ここの更新が止まってしまい、すごく悲しい水波形です。
AB4.23.00を愛用しています。
Treeviewのノードをドラッグアンドドロップ(D&D)で移動させる方法について質問があります。
が検知されたらD&Dが開始される事が分かり、
D&Dが終了すると、
が通知されるということがわかったため、Treeviewをサブクラス化しWM_LBUTTONUPを捕まえます。
ここまではうまく行ったのですが、D&Dの対象を知る方法が分かりません。
を利用すれば良さそう(参考サイト)なのですが、
SendMessageに与える値がよく分かりません。
や
や
や
というのを試しましたが、返ってくる値はすべて0(失敗)……(参考)
これはどのように使えばいいのでしょうか。
ご存じの方がいらっしゃいましたらご教授ください。
よろしくお願いいたします。
AB4.23.00を愛用しています。
Treeviewのノードをドラッグアンドドロップ(D&D)で移動させる方法について質問があります。
コード: 全て選択
TVN_BEGINDRAG
D&Dが終了すると、
コード: 全て選択
WM_LBUTTONUP
ここまではうまく行ったのですが、D&Dの対象を知る方法が分かりません。
コード: 全て選択
TVGN_DROPHILITE
SendMessageに与える値がよく分かりません。
コード: 全て選択
ターゲットのノードのハンドル = SendMessage(TreeViewのハンドル, TVM_GETNEXTITEM, TVGN_DROPHILITE, D&Dを始めたノードのハンドル)
コード: 全て選択
ターゲットのノードのハンドル = SendMessage(TreeViewのハンドル, TVM_GETNEXTITEM, TVGN_DROPHILITE, D&Dを終えたハンドル)
コード: 全て選択
ターゲットのノードのハンドル = SendMessage(D&Dを始めたノードのハンドル, TVM_GETNEXTITEM, TVGN_DROPHILITE, D&Dを終えたノードのハンドル)
コード: 全て選択
ターゲットのノードのハンドル = SendMessage(D&Dを終えたノードのハンドル, TVM_GETNEXTITEM, TVGN_DROPHILITE, D&Dを始めたノードのハンドル)
これはどのように使えばいいのでしょうか。
ご存じの方がいらっしゃいましたらご教授ください。
よろしくお願いいたします。