Case vbKeyTab
If Shift = 1 Then
startpos = oRTF.SelStart
'построчно слева убрать символ табуляции
'если не выделено текста, взять текущую строку
aRTF = Split(oRTF.PlainText, vbNewLine) '-- all lines text
sRTF = Split(oRTF.SelText, vbNewLine) '-- sel lines text
i = 0
For Each lRTF In aRTF
If aRTF(i) = sRTF(j) Then
lRTF = Replace(lRTF, vbSpace, vbNullString, , vbTabLength)
aRTF(i) = lRTF
j = j + 1
End If
i = i + 1
Next
'вставить
sText = Join(aRTF, vbNewLine)
'oRTF.SelLength = Len(Join(aRTF, vbNewLine))
Set sqlp = New MSSQLParser.vbSQLParser
sText = sqlp.ParseSQLSyntax(sText, vbOracleSyntax)
Me.RTF24.RTFtext = ""
oRTF.RTFtext = "{\rtf1{" & SqlColorTable & "}" & SqlFontTable & sText & "}"
oRTF.SelStart = startpos
'oRTF.SelLength = Len(Join(aRTF, vbNewLine))
|