コントロールのmouseMoveで他のコントロールにマウスがきたら?


ddd  2009-02-15 01:17:35  No: 101572

Formにボタンが2個貼り付けています。

ボタン1のマウスをダウン中に、マウスを移動したときに
ボタン2の上にきたら、MSGを出したいです。

どうすればよいのでしょうか?


ガッ  2009-02-23 11:56:41  No: 101573

※VB6として書き込み
もしかしたらボタン2をサブクラス化してウィンドウプロシージャを書き換えれば何とかなるかもしれませんが,私には良くわかりません.

なので別解として(動作が結構変わってしまいますが),
ボタン1をドラッグ可能にして,
ボタン2の DragOver イベントの Source 引数で判断してみてはいかがでしょう.

例)
Option Explicit
'Form1にボタンを二つ貼り付ける.
'名前はそれぞれ Command1 Command2
Private Sub Command1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
    Call Command1.Drag
End Sub

Private Sub Command2_DragOver(Source As Control, X As Single, Y As Single, State As Integer)
    Debug.Print Source.Name
End Sub


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加