TX Text Control inserts a tab character when the key combination CTRL+i is used. This short code sample shows you how to trap these keystrokes in order to implement some other behavior, such as formatting the currently selected characters to italic.
Generally, the KeyPress event can be used to trap keystrokes and to make void their values. Unfortunately, the KeyAscii value in the KeyPress event is 9 on pressing CTRL+i, which is the same value as a normal tab character. Therefore, we have to use a global flag that returns the state of the CTRL key.
Consider the following:
Dim ctrl_key_state As Boolean Private Sub TXTextControl1_KeyDown(KeyCode As Integer, Shift As Integer) If Shift = 2 Then ctrl_key_state = True Else ctrl_key_state = False End If End Sub Private Sub TXTextControl1_KeyPress(KeyAscii As Integer) If ctrl_key_state = True Then If KeyAscii = 9 Then KeyAscii = 0 If TXTextControl1.FontItalic = 0 Or TXTextControl1.FontItalic = 2 Then TXTextControl1.FontItalic = 1 Else TXTextControl1.FontItalic = 0 End If End If End If End Sub