Question

I have a text area and a function to do syntax highlighting on it. Right now it reads the entire RichTextBox. How would I get a string variable containing the current line? Below is the code i currently have.

Private Sub HighLight()
    Dim rm As System.Text.RegularExpressions.MatchCollection
    Dim m As System.Text.RegularExpressions.Match
    Dim x As Integer ''lets remember where the text courser was before we mess with it

    For Each pass In FrmColors.lb1.Items
        x = rtbMain.SelectionStart
        rm = System.Text.RegularExpressions.Regex.Matches(LCase(rtbMain.Text), LCase(pass))
        For Each m In rm
            rtbMain.Select(m.Index, m.Length)
            rtbMain.SelectionColor = Color.Blue
        Next
        rtbMain.Select(x, 0)
        rtbMain.SelectionColor = Color.Black
    Next
End Sub
Was it helpful?

Solution

Not tried it but:

rtbMain.Lines(lineNumber)

if not assign the Lines property to an array and access the array element.

OTHER TIPS

I think you want

rtbMain.Lines(rtbMain.GetLineFromCharIndex(rtbMain.SelectionStart))
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top