免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1062 | 回复: 0
打印 上一主题 下一主题

Gtk动态多国语言设想 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2009-06-03 22:10 |只看该作者 |倒序浏览
    昨天6月2日,是台北computex开幕的日子,希望我们的K1和Z1打出好名声,争取多几个客户~~~呵呵,我们也要努力啦!
    今天按计划要开始实现多语言的支持,并且要动态刷新多国语言的界面。看来这里有两个主要步骤,第一个是如何把字符串变成本地语言。另一个问题是如何动态更新。
    有一个更郁闷的,我们的ARM板子没有gettext...据诚实著称的J.C说:这个移植,基本很难!看来只能自己解决第一个问题。。。
    大体考虑了下,打算用hashTable来实现,第一,容易管理;第二,效率也不错。首先我们需要配置一些语言文件,考虑用xml(谁叫我们的xml库这么好用)
en_US.xml, zh_CN.xml, zh_TW.xml....

例子:
  
  ......
系统起来的时候先判断当前是什么语言,如果是简体中文的话,把zh_CN.xml加载,分析,并把每一个key和value插入hashTable,当我们需要请求key值等于system的翻译时,只需要lookup一下hashTable.即可拿出当前语言翻译。


    第一个问题好像解决了?!下来要解决第二个问题,如何动态刷新界面。目前gtk呈现的封装都是继承GtkWidget,有点想添加一个名为refresh的signal.当重新加载语言xml到hashTable后,直接调用呈现界面的refresh信号,强制它们自己刷新一遍,这样动态重新设置string,也能动态呈现多语言。

    这个还是暂时的想法,可以给大家一个参考,如果大家有什么好建议和好方法,欢迎提出~~~谢谢


本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u2/74194/showart_1954028.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP