tagCANDY CGI VBレスキュー(花ちゃん) の Visual Basic 2010 用 掲示板(VB.NET 掲示板)
VBレスキュー(花ちゃん) の Visual Basic 2010 用 掲示板(VB.NET 掲示板)
[ツリー表示へ]  [ワード検索]  [Home]

タイトル Re: マウス左クリック中にMouseEnterが発生しない
投稿日: 2013/07/31(Wed) 09:27
投稿者shu
マウスクリック => マウスの左ボタンを押して離す動作
マウスボタンを押した状態だと押したときのコントロールに対しマウスのイベントが
発生しますので全てのコントロールについてMouseMoveを実装してマウスの場所より
対象チェックボックス上であるか判断してチェックを付けるようにする必要があります。


Form上にCheckBox1〜5のみある場合の例です。
Panel1などの中にある場合はMe.を対象Panel1上であるか判断してなおかつ
Me.をPanel1.にして階層的にチェックを行う必要があります。

    Private Sub AllControl_MouseMove(sender As Object, e As System.Windows.Forms.MouseEventArgs) Handles CheckBox1.MouseMove,
        CheckBox2.MouseMove, CheckBox3.MouseMove, CheckBox4.MouseMove, CheckBox5.MouseMove, Me.MouseMove

        Dim cl = Me.GetChildAtPoint(Me.PointToClient(Control.MousePosition))

        If TypeOf cl Is CheckBox Then
            With DirectCast(cl, CheckBox)
                Select Case e.Button
                    Case Windows.Forms.MouseButtons.Left
                        .Checked = True
                    Case Windows.Forms.MouseButtons.Right
                        .Checked = False
                End Select
            End With
        End If
    End Sub

- 関連一覧ツリー をクリックするとツリー全体を一括表示します)

古いスレッドにレスはつけられません。