Rubrik: Controls · TextBox & RichTextBox | VB-Versionen: VB2005, VB2008 | 16.09.09 |
RichTextBox - bei Rechtsklick Cursor setzen Standardmäßig wird der Cursor im RichTextBox-Control nur beim Linksklick auf die entsprechende Textstelle gesetzt. Hier zeigen wir eine Möglichkeit, wie man den Cursor auch beim Rechtsklick entsprechend setzen kann. | ||
Autor: Dieter Otter | Bewertung: | Views: 10.344 |
www.tools4vb.de | System: Win2k, WinXP, Win7, Win8, Win10, Win11 | Beispielprojekt auf CD |
Bei Verwendung des RichTextBox-Controls wird der Cursor standardmäßig nur beim Linksklick auf die entsprechende Textstelle positioniert. Beim Rechtsklick hingegen bleibt der Eingabecursor an der aktuellen Einfügemarke stehen. Manchmal will man aber, dass der Eingabecursor auch beim Rechtsklick entsprechend gesetzt wird.
Nachfolgend eine Möglichkeit, wie sich das Ganze sehr einfach realisieren lässt:
Private Sub RichTextBox1_MouseUp(ByVal sender As Object, _ ByVal e As System.Windows.Forms.MouseEventArgs) Handles RichTextBox1.MouseUp ' rechte Maustaste? If e.Button = Windows.Forms.MouseButtons.Right Then ' nur, wenn aktuell kein Text markiert ist If RichTextBox1.SelectionLength = 0 Then ' Zeichenposition ermitteln Dim CharPos As Integer = RichTextBox1.GetCharIndexFromPosition(e.Location) If CharPos >= 0 Then ' Cursor an die ermittelte Position setzen RichTextBox1.SelectionStart = CharPos End If End If End If End Sub