您的位置:程序门 -> vb -> 基础类



text文本框,如何显示unicode字符集


[收藏此页] [打印本页]选择字色:背景色:字体:[][][]


text文本框,如何显示unicode字符集
发表于:2007-01-04 13:10:16 楼主
界面上有个输入框
输入一些字符,有gbk的,也有   unicode的,unicode字符也能正确显示,但,   用造字程序(eudcedit.exe)在unicode码位上,如f8f1这个码位进行造字,保存好后,在word里能正确输入并显示,在文本框里则显示问号,怎样才能让文本框支持unicode字符集

请哪位高手说一下
谢谢
发表于:2007-01-04 13:22:561楼 得分:0
vb自带的textbox不可能。
   

发表于:2007-01-04 13:29:122楼 得分:0
不懂,关注ing
发表于:2007-01-05 08:33:003楼 得分:0
owner-drawn   textbox   using   createwindowexw   can   show   unicode   on   nt/xp.vb   default   textbox   can 't   do   the   job.you   can   use   richedit   to   show   unicode.
发表于:2007-01-05 15:20:274楼 得分:0
richedit   控件
是可以输入到里面,但他是手动输入的
,如果是用程序读的时候,字符串就变成问号了,请问该如何解决?

发表于:2007-01-15 10:40:205楼 得分:0
waiting...
发表于:2007-02-01 10:11:386楼 得分:0
切呀,怎么没有人呢?
发表于: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功能。
发表于:2007-02-01 11:47:218楼 得分:0
接上关于vb自带的textbox,label完全能显示unicode:
    在英文windows   98和英文xp上测试通过。这样你的程序就可以走出国门,不怕乱码了。
发表于:2007-02-01 11:47:559楼 得分:0
接上关于vb自带的textbox,label完全能显示unicode:
    在英文windows   98和英文xp上测试通过。这样你的程序就可以走出国门,不怕乱码了。
发表于:2007-02-01 14:28:1910楼 得分:0
f8e1这个unicode码位所造的字,能正确显示吗?
发表于:2007-02-02 11:04:4611楼 得分:0
有谁成功吗?
发表于:2007-02-02 11:53:3012楼 得分:0
看了你的帖很多天,还没解决,我就试了一下。可以呀,在   textbox和richedit中都可以看到。问题有可能是你没正确用eudcedit.exe,先选中f8e1--〉然后画--〉save   character---> font   links   to   link   with   all   font.测试环境:xp   (english)/sp2,vb6   (en)   sp6.
发表于:2007-02-02 11:56:5713楼 得分:0
因为你造的字在自己的电脑里,所以只能本机显示。
发表于:2007-02-02 12:12:1414楼 得分:0
当然你可以copy你所造字体到其他的电脑里去显示。
说明:测试环境:xp   (english)/sp2,vb6   (en)   sp6.我用的是我自编的   dll/tlb   extend   unicode   textbox和unicode   richedit   (using   createwindowexw)。
发表于:2007-02-05 10:24:3315楼 得分:0
' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' '
因为你造的字在自己的电脑里,所以只能本机显示
' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' '

这句话正确,但是如果换一台机器
他的确是显示不出来,但是他绝不应该显示问号??

用记事本保存   你unicode格式,你再试试

举例
a.txt     保存为unicode格式
内容是
“我们”

如果“我”是造的字的话
在其他机器上则应显示“   门”     应以空格替代,而不应是问号

可以试试


快速检索

最新资讯
热门点击