掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
MouseLeaveを取得するには? (ID:101856)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
> MouseLeave(Picture1の範囲からマウスカーソルが外れたら起こるイベント)を取得することはできるでしょうか。 VB6 には MouseLeave イベント自体が存在していないので、 各コントロールごとに、個別に座標判断するしか無いと思います。 Option Explicit Private Declare Function SetCapture Lib "USER32" (ByVal hWnd As OLE_HANDLE) As OLE_HANDLE Private Declare Function ReleaseCapture Lib "USER32" () As Integer Private mHWND As OLE_HANDLE Private Sub MouseEnter(ByVal target As VB.Control) Debug.Print "Enter <- " & target.Name End Sub Private Sub MouseLeave(ByVal target As VB.Control) Debug.Print "Leave -> " & target.Name End Sub Private Sub Capture(ByVal target As VB.Control, X As Single, Y As Single) If mHWND <> target.hWnd Then mHWND = target.hWnd SetCapture mHWND MouseEnter target End If If X < 0 Or Y < 0 Or X > target.Width Or Y > target.Height Then ReleaseCapture MouseLeave target End If End Sub Private Sub Command1_MouseMove(Button%, Shift%, X!, Y!) Capture Command1, X, Y End Sub Private Sub Picture1_MouseMove(Button%, Shift%, X!, Y!) Capture Picture1, X, Y End Sub Private Sub Text1_MouseMove(Button%, Shift%, X!, Y!) Capture Text1, X, Y End Sub
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2020 Takeshi Okamoto All Rights Reserved.