¿Cómo obtener el número de línea de la primera línea del área visible en el cuadro de texto en VB.NET?
Luego use la función API GetScrollPos para obtener el número de línea actual del cuadro de texto y el cuadro de número de línea, y finalmente use la función API SendMessage para desplazar el número de línea del cuadro de número de línea al número de línea correspondiente .
Dado que la barra de desplazamiento del cuadro de texto no tiene eventos de desplazamiento, puede usar temporalmente el temporizador para actualizar. Aunque el método es un poco torpe, solo se puede usar de esta manera por el momento.
El código es el siguiente:
Función de declaración privada GetScrollPos Lib "user32" (ByVal maneja como IntPtr, ByVal nbar como entero) Como entero
Declaración privada Función SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd como IntPtr, ByVal wMsg como entero, ByVal wParam como entero, ByVal lParam como entero) como entero
Private Sub Button1_Click(ByVal remitente como sistema .Object, ByVal e As System.EventArgs) Botón de proceso1.Click
Atenuar a Como entero
a = GetScrollPos(TextBox1.Handle, 1)
Atenuar b Como número entero
b = GetScrollPos(TextBox2.Handle, 1)
SendMessage(TextBox2.Handle, &HB6, 0, a-b)
End Sub p>