2012-02-22 4 views
2

나는 이것이 가능한지 알아 내려고하고있다. 내 멀티 라인 텍스트 상자에서 누군가가 클릭 (또는 실제로 더블 클릭)하면, 두 번 클릭 한 라인 []을 알아낼 수 있기를 바랍니다. 나는 내 Windows의 텍스트 상자 중 하나의 속성으로 줄 [] 배열을 가지고 있다는 것을 알고 있으며, 멋지다.하지만 두 번 클릭하면 그 당시의 마우스 아래에 어떤 색인이 있는지 알려줄만한 것이 무엇이 있을까?VB.NET. 클릭 한 텍스트 상자 줄은 무엇입니까?

답변

7

클릭 한 문자를 찾으려면 GetCharIndexFromPosition() 메서드를 사용하십시오. 그런 다음 GetLineFromCharIndex()를 사용하여 해당 문자가 포함 된 줄을 가져옵니다. 이처럼 : 나는, 내가 것 둘에 신용을 줄 수 있다면

Private Sub TextBox1_MouseDoubleClick(ByVal sender As Object, ByVal e As MouseEventArgs) Handles TextBox1.MouseDoubleClick 
    Dim pos = TextBox1.GetCharIndexFromPosition(e.Location) 
    Dim line = TextBox1.GetLineFromCharIndex(pos) 
    Debug.Print("You double-clicked line #{0}", line + 1) 
End Sub 
+0

+1 @Hans 옆모습, 당신은 1 초 –

+0

@Hans 옆모습 아멘 Ayach 나를 이겼다. 그것은 훌륭하게 잘 작동합니다. – Adrian

관련 문제