none
[NET][TIP] TreeView (트리뷰) 에서 마우스 작동 관련 RRS feed

답변

  • .NET TreeView (트리뷰) 에서 트리에 각종 값을 생산한 다음
    마우스 왼쪽 버튼으로 클릭을 하면 클릭한 노드 (Node) 가 선택이 되죠?
    그런데 왼쪽 버튼으로 드래그를 할려고 한다던가
    오른쪽 버튼을 누른다면 누르고 있을때는 잠시 선택이 되어있다가
    움직이거나 마우스를 때면 원래 위치로 돌아가버리는 이상한 현상(?)이 있습니다.
    이걸 해결하기 위한 코딩입니다.

     

    Private Sub tvProcess_MouseDown(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles tvProcess.MouseDown

            On Error GoTo ErrHandler
            With tvProcess
                .SelectedNode = .HitTest(e.X, e.Y).Node
                'Debug.Print tvMainTree.SelectedItem
                If e.Button = Windows.Forms.MouseButtons.Right Then
                    '오른쪽 버튼 눌렀을때의 메뉴 코딩 부분
                ElseIf e.Button = Windows.Forms.MouseButtons.Left Then
                    '왼쪽 버튼 처리 안함. OLE 드래그 드롭에 문제 발생함
                End If
            End With
    ErrHandler:
            Exit Sub

        End Sub

     

    MouseDown 이벤트에 위와 같이 코딩하시면
    마우스 클릭에 관한 문제를 해결하실 수 있습니다.

    좋은 하루 되세요.

    • 답변으로 표시됨 devlife 2012년 6월 29일 금요일 오전 11:02
    2012년 6월 29일 금요일 오전 11:02