VB6中使用RichTextBox控件,当按ctrl+space从中文输入法(我用的是陈桥智能五笔输入法)切换输入法到英文状态时,所打出的英文字符会有变化,再按ctrl+space切换到中文输入法,这里输入的中文字符都是乱码!请问:这是怎么回事?怎么解决?
出现乱码后,我设置msgbox RichTextBox1.fontsize & RichTextBox1.fontname &
RichTextBox1.fontcharset,查看信息,和原来并没有什么两样。
出现乱码后,我设置msgbox RichTextBox1.fontsize & RichTextBox1.fontname &
RichTextBox1.fontcharset,查看信息,和原来并没有什么两样。
private sub RichTextBox1_keyup((KeyCode As Integer, Shift As Integer)
If (Shift = vbCtrlMask And KeyCode = vbKeySpace) Or _
(KeyCode = vbKeySpace And Shift = vbCtrlMask) Then '当输入空格时检查文本行为。
Dim Position As Long
Dim SelectiveText As Long
Position = rtfDiary.SelStart
SelectiveText = rtfDiary.SelLength
With rtfDiary
.Text = rtfDiary.Text
.SelStart = Position
.SelLength = SelectiveText
End With
End If
end sub
If (Shift = vbCtrlMask And KeyCode = vbKeySpace) Or _
(KeyCode = vbKeySpace And Shift = vbCtrlMask) Then '当输入空格时检查文本行为。
Dim Position As Long
Dim SelectiveText As Long
With RichTextBox1
Position = .SelStart
SelectiveText = .SelLength
.Text = rtfDiary.Text
.SelStart = Position
.SelLength = SelectiveText
End With
End If
end sub
private sub RichTextBox1_keyup((KeyCode As Integer, Shift As Integer)
If (Shift = vbCtrlMask And KeyCode = vbKeySpace) Or _
(KeyCode = vbKeySpace And Shift = vbCtrlMask) Then '当输入空格时检查文本行为。
Dim Position As Long
Dim SelectiveText As Long
With RichTextBox1
Position = .SelStart
SelectiveText = .SelLength
.Text = .Text
.SelStart = Position
.SelLength = SelectiveText
End With
End If
end sub