Hallo,
ich bin neu im Forum, ich habe lange Jahre VB programmiert und ich versuche mich in VB.net einzuarbeiten.
Ich habe folgendes Problem:
Ich habe ein Programm geschrieben, was mir aus einer Datei die Zeilen ausliest und diese bearbeitet und dann in eine RichtextBox ausgibt und in eine Datei.
Nun möchte ich das geänderte in der Richtextbox farblich hervorheben.
Ich schreibe die geänderte Zeile in die Richtextbox, dann suche ich in der Richtextbox den String, den ich geändert habe und selektiere ihn, dann passe ich Farbe und Font an.
Das klappt theoretisch.
ABER wenn ich z.B. in der 4 Zeile den Text "BL 20" markieren will, findet er in Zeile 1 auch "BL 20" und selektiert das.
Okay, dann habe ich die Überladung gefunden, dass er festlegen kann wo er mit der Suche starten soll:
Also merke ich mir die letzte Stelle und fange dort an zu suchen, GEHT NICHT erfindet wieder das in der ersten Zeile der Textbox :-(
Okay dann habe ich versucht mit
Dass er Rückwärts sucht, denn die zu ändernde Zeile ist ja die letzte, geht auch nicht.
Mache ich einen Gedankenfehler????
Anbei nochmal die debug-Ausgabe:
BL 20 5 94
BL 5 5 168
BL 10 5 244
BL 20 5 94
Hoffe Ihr könnt mir helfen!!!
Gruss Alex
ich bin neu im Forum, ich habe lange Jahre VB programmiert und ich versuche mich in VB.net einzuarbeiten.
Ich habe folgendes Problem:
Ich habe ein Programm geschrieben, was mir aus einer Datei die Zeilen ausliest und diese bearbeitet und dann in eine RichtextBox ausgibt und in eine Datei.
Nun möchte ich das geänderte in der Richtextbox farblich hervorheben.
Ich schreibe die geänderte Zeile in die Richtextbox, dann suche ich in der Richtextbox den String, den ich geändert habe und selektiere ihn, dann passe ich Farbe und Font an.
Code:
RichTextBox1.AppendText(classZeile.getExport_line() & vbNewLine) RichTextBox1.SelectionStart = RichTextBox1.Find(corrStr) RichTextBox1.SelectionColor = Color.Green Dim bfont As New Font(RichTextBox1.Font, FontStyle.Bold) RichTextBox1.SelectionFont = bfont
ABER wenn ich z.B. in der 4 Zeile den Text "BL 20" markieren will, findet er in Zeile 1 auch "BL 20" und selektiert das.
Okay, dann habe ich die Überladung gefunden, dass er festlegen kann wo er mit der Suche starten soll:
Code:
RichTextBox1.AppendText(classZeile.getExport_line() & vbNewLine) RichTextBox1.SelectionStart = RichTextBox1.Find(corrStr, such_start, RichTextBox1.TextLength, RichTextBoxFinds.None) such_start = RichTextBox1.Find(corrStr) RichTextBox1.SelectionLength & " " & RichTextBox1.SelectionStart) RichTextBox1.SelectionColor = Color.Green Dim bfont As New Font(RichTextBox1.Font, FontStyle.Bold) RichTextBox1.SelectionFont = bfont
Okay dann habe ich versucht mit
Code:
RichTextBox1.SelectionStart = RichTextBox1.Find(corrStr,RichTextBoxFinds.Reverse)
Mache ich einen Gedankenfehler????
Anbei nochmal die debug-Ausgabe:
BL 20 5 94
BL 5 5 168
BL 10 5 244
BL 20 5 94
Hoffe Ihr könnt mir helfen!!!
Gruss Alex
Comment