毎日、お世話になっております。
ツリービューを作成中のくま太郎です。
今回は、ツリービューで選択したノード(必ず1つ)をドラッグして
同じフォーム上に作成したゴミ箱(コマンドボタンにしてますが)に
ドロップしたら、DBよりそのデータを削除する。という仕様を作成して
います。
で、質問はデスクトップ上のゴミ箱のように、そこにカーソルが
行ったら色を反転したいのですが、どのイベントにどのように書いたら
いいのかわかりません。
ご指導よろしくお願いします。
> ツリービューを作成中
誤解を生む表現かも。(^^;
それは兎も角、質問時には環境を書きましょう。
とりあえず、VB6 と仮定して回答します。
> そこにカーソルが行ったら色を反転したいのですが、
ドラッグ操作ですから、OLEDragOver イベントあたりかな。
Dim N As Node
Set N = Me.TreeView1.HitTest(x, y)
Set TreeView1.DropHighlight = N
If N Is Nothing Then
Effect = vbDropEffectNone
Else
Effect = vbDropEffectCopy
Set N = Nothing
End If
あちゃ。「ツリービュー」という言葉に釣られてしまいました…。
コマンドボタンにドロップするのですね。
まぁ、使うべきイベントは一緒でしょう。OLEDrag系のイベントですね。
背景色の変更については、BackColor プロパティを使用できます。
ただしヘルプにも書かれていますように、 Style プロパティの値によっては
このプロパティが無視されるという点には注意してください。
すみません。VB6です。
で、今回お教え願いたいのは、ノードをクリックして、
ツリービューの外に配置しているゴミ箱ボタンに
ドロップする際に、ゴミ箱ボタンを反転したいのですが、
上記のコードはノードの反転ではないのでしょうか?
(Effectの使い方がよくわかっていないので、もし違うなら
おゆるしください。)
紛らわしくってすみませんでした。
出来ました。
いつも、いつも、ありがとうございます。
またもや解決チェックを忘れてしまいました。(^-^;
ツイート | ![]() |