Rubrik: Controls · TextBox & RichTextBox | VB-Versionen: VB4, VB5, VB6 | 24.09.04 |
Das RichTextBox-Control wird zum einen immer dann gerne verwendet, wenn man formatierten Text darstellen möchte. Zum anderen aber auch dann, wenn man große Textmengen anzeigen möchte, was mit der Standard-TextBox aufgrund der Einschränkung der Textkapazität nicht möglich ist.
Verwendet man das RTF-Control für die Anzeige von großen Textmengen OHNE zusätzliche Formatierungen hat man allerdings ein Problem. Und zwar werden Schrift- und Farbformatierungen autom. in das RTF-Control übernommen, wenn man "formatierten Text" aus der Zwischenablage in das Control einfügt. Um dies zu unterbinden, ist wie folgt vorzugehen:
- Eigenschaft "AutoVerbMenu" auf den Wert FALSE setzen, um das Standard-Kontextmenü zu unterdrücken
- Abfangen der Tastenkombinationen STRG+V und SHIFT+Einfg
Private Sub RichTextBox1_KeyDown(KeyCode As Integer, Shift As Integer)
' Strg+V und Shift+Einfg abfangen
If (KeyCode = vbKeyV And Shift = 2) Or (KeyCode = vbKeyInsert And Shift = 1) Then
KeyCode = 0
' Text ohne Formatierungen einfügen
If Clipboard.GetFormat(vbCFText) Then
RichTextBox1.SelText = Clipboard.GetText(vbCFText)
End If
End If
End Sub