我正在尝试设计一个具有任何语言特征的虚拟键盘。 一切都很顺利,除了一点:代码超过0xFFFF。 我正在使用代理对来代码超过0xFFFF,如下所示:
Dim codeH As Integer
Dim codeL As Integer
If thisCode > 65535 Then
thisCode = (thisCode - &H10000)
codeH = &HD800 + (thisCode >> 10)
codeL = &HDC00 + (thisCode And &H3FF)
Return (ChrW(codeH) + ChrW(codeL))
Else
Return ChrW(thisCode)
End If
但是,一旦我将结果作为字符串显示在控件上(richTextBox,label,button,等等......),我得到的只是方形或空白字符。
当然我尝试了几种字体,甚至是Arial Unicode MS,但我仍然坚持我的方块......
我错过了什么?任何解决方案?