Din*_*ran 0 java swing internationalization i18n-gem
我想知道这是否可以在java中我想重新加载一个swing应用程序,以便我可以设置区域设置.我正在使用超过5种语言的swing应用项目,我已经为每种语言创建了属性文件.每当用户从菜单中选择一种新语言时,我的应用程序必须重新启动才能更改所选语言.我完全陷入困境,如何使用我加载的vm参数和新语言重启我的swing应用程序.
这里的参考是与我期望的具有相同要求的网站. http://teravoice.com/
加载网页后,选择下载jnlp的链接,一旦打开应用程序,请使用任何名称登录,然后在文件菜单中找到12种语言的子菜单"语言".当我点击一种新语言时,应用程序将使用新语言和用户数据(即vm选项)重新启动.
谢谢.
通过使用ResourceBundle和Locale,这两种方式很简单
1)Locale从Native OS获取Locale.getDefault()
ResourceBundle rb = ResourceBundle.getBundle(
"com.MyPackage.Properties", Locale.getDefault());
frameTitle = (rb.getString("MyFrame.Title")); //myFrame.setTitle("frameTitle");
trayTitle = (rb.getString("MyFrame.TrayTitle"));
exitTitle = (rb.getString("MyFrame.Exit"));
newInfoTitle = (rb.getString("MyFrame.NewInfo"));
sendTitle = (rb.getString("MyFrame.Send"));
Run Code Online (Sandbox Code Playgroud)
2)在运行时设置Locale,通过Item在JComboBox中选择,然后你必须刷新(更好的是创建分离的方法,void或类)所有JComponents或方法,所有更改必须在Event Dispatch Thread上完成
4)我是IDE用户,对于Locale我使用内置编辑器来处理属性File,
| 归档时间: |
|
| 查看次数: |
6796 次 |
| 最近记录: |