[问题] 关于GWT的Locale设定

楼主: JohnnyDell (强尼戴尔)   2014-11-04 22:19:23
小弟目前在修改一个专案 ABC 是采用GWT 2.5.0, GXT 2.2.5
目前遇到一个问题是页面上一些GWT自己翻译的字都是简体中文
所谓GWT自己翻译的字例如 pagingToolBar的上下页(翻成 页 1 页页共 1 页)
或者是 Grid在读取时mask中间的 Loading(会翻成 加载中..)
此专案有三个i18n properties
1. I18NConstants.properties
2. I18NConstants_zh_TW.properties
3. I18NConstants_zh_CN.properties
第一个给英文 第二个跟第三个就是对应翻成繁体 简体中文
原本是在 ABC.gwt.xml 中这样设定
<extend-property name="locale" values="zh_CN"/>
<extend-property name="locale" values="fr_TW"/>
之后只要网址有给?locale=zh_TW 就会显示第二个properties的字
给?locale=zh_CN 就会显示地三个properties的字
但是如果没给locale参数 http://localhost/ABC 这样就是第一个
如果是第一个 那那些GWT自己翻译的是会是英文没有问题
(Loading, Page 1 of 1 etc..)
但是若是用了2,3的properties 就都会是简体中文
爬文似乎作法是要在gwt.xml设定default locale
<set-property-fallback name="locale" value="en"/>
(如果有上面这行 必须先
<extend-property name="locale" values="en"/>)
在ABC.html的head给 <meta name="gwt:property" content="locale=en">
但是这样做并没有作用 还是显示简体中文
Google有看到教学是把en给zh 他是为了想要pagingToolBar显示简体中文
另外我困惑的是 那个en指的是什么呢?(有些是给en_GB)
是GWT默认就有的语系吗? 还是说我必须有一个I18NConstants_en.properties?
另外我比较不清楚的是为何?locale=zh_TW
GWT就知道要去抓第2个properties呢?
感谢
作者: hgs1906 (受遗弃之子)   2014-11-05 16:05:00
pagingToolBar的简体字因该是要找或覆写GXT的i18设定档设定档的方式主要是自已写的程式才有用吧…戴入页面前会先抓locale参数来决定要戴入那一个语系档en是默认值 默认戴入英文 可以在原码找到en的设定档才对
作者: searcher ( )   2014-11-06 21:31:00
GXT你要修改jar里面的i18n因为他没有繁中

Links booklink

Contact Us: admin [ a t ] ucptt.com