RTB Text bei Cursor

  • VB.NET

Es gibt 10 Antworten in diesem Thema. Der letzte Beitrag () ist von %P%.

    RTB Text bei Cursor

    Hi comm,

    Kann Ich es irgendwie bewerkstelligen, dass wenn Ich in die RichTextBox klicke mir der Buchstabe der NACH- und der Buchstabe VOR dem Cursor steht ausgegeben wird?
    In vielen guten Editoren ist es ja so, dass wenn man z.B. doppelklickt dass dann das Wort markiert wird genau da wo der Cursor steht.



    %P% :Thumbup:
    Hello World
    Ich weis nicht ob ich mich irre, aber die automatische Wortmarkierung gehört zu Windoof und ist automatisch bei jedem Textinput. ...oder?



    Mfg, jmb.96 :)
    "People assume that time is a strict progression of cause to effect, but actually, from a non-linear, non-subjective viewpoint, it's more like a big ball of wibbly wobbly, ...timey wimey ...stuff."
    Hallo %P%,

    Selectionstart gibt dir die Cursorposition zurück.

    Den Buchstaben davor und danach rauszufinden ist damit nicht schwer.
    Wege gibt, es wie, auch hier immer mehrere.

    Gruss

    mikeb69

    VB.NET-Quellcode

    1. Private Sub RichTextBox1_MouseDown(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles RichTextBox1.MouseDown
    2. Dim index = RichTextBox1.SelectionStart - 1
    3. RichTextBox1.SelectionLength = 2
    4. Dim txt As String = RichTextBox1.SelectedText
    5. End Sub
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!
    Ja jetzt hab Ich'S auch gefunden. Hab den Buchstaben davor und den danach 2 Variablen zugewiesen. Das Problem ist jetzt nur noch, dass mir der in der RTB das Zeichen einfügt, muss Ich das explizit mit Remove wieder entfernen oder geht das auch anders?

    Hier so hab Ich den Code:

    VB.NET-Quellcode

    1. Try
    2. Dim Bef As String = ""
    3. Dim Aft As String = ""
    4. Aft = RichTextBox1.Text(RichTextBox1.SelectionStart)
    5. Bef = RichTextBox1.Text(RichTextBox1.SelectionStart - 1)
    6. Catch ex As Exception
    7. ToolStripStatusLabel1.Text = "error: " & ex.Message
    8. End Try
    Hello World
    Hehe, wie du's gesagt hast, mit SelectedText. Hab eure Vorschläge ausprobiert und dachte es funktioniert hat. Erst dann als mir das alles zu suspekt vorkam hab Ich den Inhalt der Sub gelöscht und als dann trotzdem beim beim Click_Event was passiert is is mir eingefallen upps da war ja auch noch was drinne :rolleyes: Eure Vorschläge haben schon gestimmt ^^
    Habs jetzt eben mit "RichTextBox1.Text(RichTextBox1.SelectionStart)" und "RichTextBox1.Text(RichTextBox1.SelectionStart -1)" gelöst ;)


    %P% :thumbup:
    Hello World