QML皮肤 界面汉化
2012-06-11 14:13
155 查看
移植现有的QML皮肤,界面均为英文,试图将其汉化,但发现有如下问题:
1. 界面上的文字竟然写死在源代码中,界面设计时没有多语言支持的规划
2. 汉语仅支持UTF-8编码格式,对于中文通用的GB2312等编码格式不支持,显示乱码
3. 对于部分字符串,类型和字面显示共用之,而QML对汉语字符串作为类型标识支持不完善。
对于如上的汉化,有两种途径,其一为笨方法,即在程序中用汉语字符串替换法,其二为稍好些的方法,即将所有QML字符串用变量替换,将变量统一放在一个js
文件中,采用import的方式引用
第一种办法需要注意,如果在windows下的sourceInsight等环境下写程序,默认的编码格式如果不是UTF-8,会导致显示乱码,可以用记事本打开,选择另存为,
在另存为的格式中选择UTF格式,保存、替换即可。记事本会将文件转码存储。如果再linux下,采用vi等方式改写,则有可能默认既是UTF-8编码,此时直接替换即
可。
如果需要更改很多文件,则需要将每一个源代码文件均做修改,这样明显不合适,可采用第二种办法,将所有的界面显示的英文摘录出来,原位置用变量替换,统
一在一个js文件中用汉语为变量赋值,然后再所有需要汉化的原文件中import这个js文件即可。如果在GB2312等编码支持的环境下编写,则仅需要将此js文件转码
为UTF编码即可,方法如第一种办法中所述。
此方法也不完美,没有解决问题 3 ,即对类型和显示共用的字符串,还不能进行汉化,另:还没有找到动态更改界面语言转换的办法,也没有实现支持多种编码汉语,还需要其他工作。
若有更好的实现方式,望大侠们指点。
1. 界面上的文字竟然写死在源代码中,界面设计时没有多语言支持的规划
2. 汉语仅支持UTF-8编码格式,对于中文通用的GB2312等编码格式不支持,显示乱码
3. 对于部分字符串,类型和字面显示共用之,而QML对汉语字符串作为类型标识支持不完善。
对于如上的汉化,有两种途径,其一为笨方法,即在程序中用汉语字符串替换法,其二为稍好些的方法,即将所有QML字符串用变量替换,将变量统一放在一个js
文件中,采用import的方式引用
第一种办法需要注意,如果在windows下的sourceInsight等环境下写程序,默认的编码格式如果不是UTF-8,会导致显示乱码,可以用记事本打开,选择另存为,
在另存为的格式中选择UTF格式,保存、替换即可。记事本会将文件转码存储。如果再linux下,采用vi等方式改写,则有可能默认既是UTF-8编码,此时直接替换即
可。
如果需要更改很多文件,则需要将每一个源代码文件均做修改,这样明显不合适,可采用第二种办法,将所有的界面显示的英文摘录出来,原位置用变量替换,统
一在一个js文件中用汉语为变量赋值,然后再所有需要汉化的原文件中import这个js文件即可。如果在GB2312等编码支持的环境下编写,则仅需要将此js文件转码
为UTF编码即可,方法如第一种办法中所述。
此方法也不完美,没有解决问题 3 ,即对类型和显示共用的字符串,还不能进行汉化,另:还没有找到动态更改界面语言转换的办法,也没有实现支持多种编码汉语,还需要其他工作。
若有更好的实现方式,望大侠们指点。
相关文章推荐
- c++界面设计皮肤工具
- 美化mfc界面,给mfc界面加上皮肤
- 【krpano】汉化Web VR设置界面
- GUI皮肤界面的尝试!
- VC 界面库 皮肤库
- 巫女みこ☆かがみん 界面汉化+修改器+看图工具
- QML与C++交互:登陆界面设计
- VS2005界面皮肤
- 源码推荐(01.18B):比较常用的分类界面,实现LOL皮肤选择效果
- 使用LookAndFeel为界面更换皮肤
- PhpStorm2017版激活方法、汉化方法以及界面配置
- PyQt中如何使用界面文件(*.ui,*.qml)
- VC 界面库 皮肤库
- 使用VCLSkin改变程序界面皮肤
- C#界面皮肤的三种加载方法
- 抽象工厂模式-Abstract Factory Pattern 工厂三兄弟之抽象工厂模式(四):界面皮肤库的抽象工厂模式解决方案
- 巫女みこ☆かがみん 界面汉化+修改器+看图工具
- QML设计登陆界面
- Qt Quick 5.2 开发笔记3-------qml界面之自定义TitleBar
- 使用LookAndFeel为界面更换皮肤