关于在 简体 系统下 开发 使用 BIG5 编码系统 的程序 的问题!!!!!!!!!!!!例如:
在设计时,在属性编辑器上label1控件的 caption 属性 输入了 一个 BIG5 的 字符串, 然后将 font 属性下的 charset 设为 CHINESEBIG5_CHARSET
,这时可以看到 正常显示字体。但编译后,放到 BIG5 编码的系统 运行 时,label1的文字出现乱码上!!! 这是什么原因??如果用 代码对 label1控件的 caption 属性 进行赋值个 BIG5 的 字符串,这样就可以正常显示!
在设计时,在属性编辑器上label1控件的 caption 属性 输入了 一个 BIG5 的 字符串, 然后将 font 属性下的 charset 设为 CHINESEBIG5_CHARSET
,这时可以看到 正常显示字体。但编译后,放到 BIG5 编码的系统 运行 时,label1的文字出现乱码上!!! 这是什么原因??如果用 代码对 label1控件的 caption 属性 进行赋值个 BIG5 的 字符串,这样就可以正常显示!
解决方案 »
- delphi文件读写问题 从某个指定的位置写入却把之前的内容清除了
- 请教个tcp/ip的端口的问题
- 大家介绍几本讲TCP/IP协议的书
- 如何让用户自己生成DBGRID的各列,分不够再加。
- 怎样让菜单显示Hint呢?
- 简单的关于更新数据的问题,轻松拿100分啊
- 菜鸟求助:请问HWND定义在那个单元?我定义了一个HWND类型的变量,编译不通过
- AnimateWindow()的问题,不拿分可惜了!
- delphi窗体提示
- 哪位大虾说说DELPHI中SOCKET的SERVER TYPE中两种类型的优劣?
- 我用了TShellListView这个对象,当鼠标右击的时候,弹出的是windows的菜单,我想让他弹出自己的菜单!
- 如何在stringgrid某列输入时能像edit一样设定为大写?在线等!
举个例说吧:
'我'
GBK编码:#206#210($CE$D2,双字节,以字节为单位)
BIG5编码:#167#218($A7$DA,双字节,以字节为单位)
Unicode编码:#25105($6211,双字节,以字为单位,在默认转换下不论简繁体环境为'我')而当在简体系统当中Delphi开发环境下往某个控件输入'我'字编码($CE$D2),系统使用当前字符集编码会在.dfm资源流文件当中转换成其相应的Unicode编码(#25105),同理当你在里面输入BIG5[$A7$DA]后由于系统并不知道你需要的是什么内容,所以它也会自作聪明地按当前系统字符集编码转换,从面存入Unicode编码为#1080($438),那么当然也就不会是开发人员本来所需要的编码了,故而显示为乱码。当然若你成简体下输入的是简体的'我'字,那么你虽然在开发环境下看到的是乱码,但是你到了繁体环境下却又能正常显示,前提是该文字存在于繁体字库当中。
注:
该问题目前偶只发现在Delphi6及以上版本存在,低版本的没有测试过,不蛮清楚,CBuilder目前的版本不存在该问题
1、不要更改字符集的屬性,用 Default就可以。
2、選擇一個繁體輸入法,如念青五筆(newhua.com有下載),輸入各種屬性值就可了
記住:千萬不要用簡體輸入法輸入漢字
!
這可是我的經驗,一般人我不告訴他! ^_^
正好最近在研究这个,你可以先用简体开发,然后再用一个Big5ToGb的函数给转一下,不就搞定了多语言版了:)))))))))))),就过就是写起来可能要麻烦一些
什麼都不要改動,直接用繁體輸入法輸入各種屬性就是.
我以前是用念青繁體輸入法. http://crc.onlinedown.net/soft/4648.htm 有下載
不過要注意的是,有各別漢字可能在繁體下面是顯示” ? “, 比如”為”,”產”,像這個問題的解決方法有:
1、用word轉為繁體;
2、換用其它繁體輸入法
3、在網站上或其它地方copy一個字
好了,祝你成功!
另外,我首先說到的問你給我多少分是和你開玩笑的,當時我在忙於幫同事安裝系統,後來就下班了。熱心為同網友解決問題是csdn人的光榮和義務!你和我都一樣!另外嘛,像你這種急問題要捨得些,給20分實在讓人沒味口。我也是看到平時csdn人熱心幫我才算了,不計較了,呵呵!
http://www.tanyong.com