Hallo Communty,
ich bin gerade dabei einen kleinen Editor zu schreiben wobei natürlich die Zeilennummerierung nicht fehlen darf.
Meine Methode zum Nummerieren funktioniert:
Einziges Problem ist und bleibt, dass es sehr stockt vorallem wenn die Fenstergröße erweitert wird.
Wisst ihr eine andere Möglichkeit die Sache schneller über die Bühne laufen zu lassen.
Impi
ich bin gerade dabei einen kleinen Editor zu schreiben wobei natürlich die Zeilennummerierung nicht fehlen darf.
Meine Methode zum Nummerieren funktioniert:
Code:
Private Sub updateNumberLabel(ByVal sender As Object, ByVal e As System.EventArgs) Handles rtbText.TextChanged, rtbText.VScroll, rtbText.FontChanged
With rtbText
Dim pos As System.Drawing.Point = New System.Drawing.Point(0, 0)
Dim firstIndex As Integer = .GetCharIndexFromPosition(pos)
Dim firstLine As Integer = .GetLineFromCharIndex(firstIndex)
pos.X = ClientRectangle.Width
pos.Y = ClientRectangle.Height
Dim lastIndex As Integer = .GetCharIndexFromPosition(pos)
Dim lastLine As Integer = .GetLineFromCharIndex(lastIndex)
pos = .GetPositionFromCharIndex(lastIndex)
lblNumber.Text = ""
For i As Integer = firstLine To lastLine Step 1
lblNumber.Text += i + 1 & System.Environment.NewLine
Next
End With
End Sub
Einziges Problem ist und bleibt, dass es sehr stockt vorallem wenn die Fenstergröße erweitert wird.
Wisst ihr eine andere Möglichkeit die Sache schneller über die Bühne laufen zu lassen.
Impi