mit Richtextbox von VB

Dieses Thema im Forum "Programmierung & Entwicklung" wurde erstellt von KirO, 9. Dezember 2005 .

Schlagworte:
  1. 9. Dezember 2005
    hi.
    ich wollte gerne in einer RTB eine Bestimme stelle (die ich vorher als String übergebe) die textfabe ändern. Das macht man normalerweise mit dem Befehl:
    Code:
     RTB.SelStart = 0 'Am Anfang anfangen zu markieren
     RTB.SelLength = Len(RTB.Text) 'Am Ende aufhören
     RTB.SelColor = RGB(rot, gruen, blau)
     RTB.SelStart = Len(RTB.Text) 'Markierung hinten anfangen
     RTB.SelLength = 0 'Und da auch aufhören-->Cursor steht am Ende der RTB und nichts ist mehr markiert
    nun hab ich aber das Problem das ich nur ne bestimme stelle makieren will aber ich weiß nicht wie groß der text wird weil es ne jusereingabe ist.
    ich weiß aber das der text danach der folgt (der nicht verändert werden soll) "ich bin dein test text" heißt wäre echt nett wenn mir jemand helfen kann
    Thx KirO und natürlich immer 10ner
     
  2. 10. Dezember 2005
    das geht mit dem InStr Befehl:

    Code:
    Dim start As Integer
    Dim derSuchText As String
    
    RichTextBox1.Text = "RichTextBox1"
    derSuchText = "Box"
    
    start = InStr(RichTextBox1.Text, derSuchText) ' Die erste Stelle im Text suchen an der der Suchtext vorkommt
    RichTextBox1.SetFocus 'Den Fokus auf die RTB setzten
    RichTextBox1.SelStart = start - 1 'Vor dem Startpunkt anfangen zu markieren
    RichTextBox1.SelLength = Len(derSuchText) ' Markierungslänge ist die Länge des Suchtextes
    die suche ist aber Case sensitive, dh. das groß und kleinschreibung beachtet werden muss!! um das zu ändern, muss die zeile 7 durch folgende erstzt weden:
    Code:
    start = InStr(1, RichTextBox1.Text, derSuchText, vbTextCompare) ' Die erste Stelle im Text suchen an der der Suchtext vorkommt
    
    so wird ein reiner textvergleich durchgefürt werden!
    jetzt kannst du mit dem markierten text machen was du willst

    RichTextBox1.SetFocus is übrigens nur nötig damit man die markierung auch sieht...
    um die markierung wieder aufzuheben reicht
    Code:
    RichTextBox1.SelStart = 0
    ich hoffe ich konnte dir helfen

    Gruß,
    Figger
     
  3. Video Script

    Videos zum Themenbereich

    * gefundene Videos auf YouTube, anhand der Überschrift.