| 发表于:2007-02-01 11:24:517楼 得分:0 |
1.最新研究: vb自带的textbox完全能显示unicode。label控件也可以。但不能同时显示混二种不同代码页的unicode,例如:阿拉伯文和中文。英文除外,也就是说能显示中文和英文混合的unicode。也能显示阿拉伯文和英文混合的unicode。你所需要做的不仅是将unicode字符串转换成mbcs,而且要设置textbox的.font.charset和字体。例如:中文和英文混合的unicode string: text1.font.name = "tohoma " text1.font.charset = 134 '---> gb2312 charset is 134 text1.text=mbcs_encode(strunicode,936) ' 936 is gb2312的代码页 mbcs_encode用到widechartomultibyte(936, lflags, strptr(strunicode), _ tlen, b(0), lngbuffersize, vbnullstring, 0) 2.为了彻底地解决unicode显示,编辑问题,你可以用createwindowsw去自绘textbox,即扩展textbox功能。 | | |
|