多语言版本-繁体乱码问题 ( 积分: 200 )

  • 主题发起人 主题发起人 popi
  • 开始时间 开始时间
P

popi

Unregistered / Unconfirmed
GUEST, unregistred user!
我使用delphi6的国际化语言方式Project->languages->add...加入中文(台湾)。
然后修改中文(台湾)的窗体资源,利用windows自带的“中文转码器”转换简体到繁体(BIG5码),resourcestring也一样,字体的Charset:DEFAULT_CHARSET(或CHINESEBIG5_CHARSET),字体:default,但编译后到繁体系统中,这些BIG5码的繁体字全部是乱码;而那些resourcestring的字用MESSAGEBOX弹出的又都是正确的。
如果我把中文(台湾)的窗体资源上的字全部直接用microsoft的拼音输入法直接输入繁体字,就不转换BIG5码了,resourcestring也一样,编译后到繁体系统中,窗体的繁体显示都正确,而resourcestring的字用MESSAGEBOX弹出的又都是乱码。
郁闷~请各位大虾指点一下~
比较急,谢谢~
 
我使用delphi6的国际化语言方式Project->languages->add...加入中文(台湾)。
然后修改中文(台湾)的窗体资源,利用windows自带的“中文转码器”转换简体到繁体(BIG5码),resourcestring也一样,字体的Charset:DEFAULT_CHARSET(或CHINESEBIG5_CHARSET),字体:default,但编译后到繁体系统中,这些BIG5码的繁体字全部是乱码;而那些resourcestring的字用MESSAGEBOX弹出的又都是正确的。
如果我把中文(台湾)的窗体资源上的字全部直接用microsoft的拼音输入法直接输入繁体字,就不转换BIG5码了,resourcestring也一样,编译后到繁体系统中,窗体的繁体显示都正确,而resourcestring的字用MESSAGEBOX弹出的又都是乱码。
郁闷~请各位大虾指点一下~
比较急,谢谢~
 
关中 。。。。
 
汗~我以为有人回答了,还高兴了一下~:(
不过还是多谢oldcat99帮顶~
在线等,各位大虾帮忙,急~ 下周一要交产品了:(
 
帮你提前。。
 
在怎么没人能够回答呢?
难道大家没用过delphi的国际化语言特性,做过繁体系统吗?
 
这个方法我用过,有些不好的地方,实际上他是做了一个同样的工程,只是资源不同,而且在切换的时候,系统会闪。其实网上早就有ini的代码,还有另外一种方式是我现在用的,不过用ini基本上也能满足要求了
说说我的思路,建立两个ini,一个用在简体中文,一个用在繁体中文,你根据当前系统的配置情况决定选择哪个文件,然后你在系统里面就需要做处理了,每一个Form构造的时候都去这个Ini文件中读取你要的这个Form上的资源
比如一个Form1有一个Button1
[Form1]
Button1=关闭
……
组织根据项目情况,另外如果显示乱麻,首先要确定有繁体中文包,希望对你有帮助
 
to chenybin:
谢谢您的回答~
我也考虑过INI,但现实是不行的
1.程序比较大,用INI显得很凌乱
2.开发时间有限,不能去把每个窗体的资源都抽去出来,再写INI,太慢了
所以没办法。:(
 
用多语言控件,
推荐 TsiLang Components Suite ,但是还没有尝试在繁体系统运行程序。
 
看看我的笔记
 
我的意思是因为你如果用Resource DLL你照样是需要做一个同样的工程,最简单的办法就是编译两个工程,先对付用
如果做多国语言版本只有用类似INI的方式,比如说你可以不按Form抽取,还有字符串拼接等等
 
多人接受答案了。
 

Similar threads

D
回复
0
查看
825
DelphiTeacher的专栏
D
D
回复
0
查看
831
DelphiTeacher的专栏
D
D
回复
0
查看
664
DelphiTeacher的专栏
D
S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
后退
顶部