在享受了这个网站的帮助几次之后,是时候把自己融入这里了!
好吧,我正在使用 java(在 Windows 7 下)开始一个个人项目,并且我正在开始使用 SWT。经过几个小时的搜索,我对所获得的简短信息并不满意。
该项目是一个应用程序,我将在其中有一个主窗口,用户可以从中访问不同的模块(客户管理、产品管理......)。
我想要的是正确设置:
A) I18n 语言 B) 用户偏好
“正确”意味着从程序的所有组件到该数据的良好、正确和轻松的访问以使用它,同时也要记住通过最“标准化”的方式来完成它。
我已经创建了一个名为“LanguagueResources”的包,其中有 MessageBundle_xx_XX.properties,并且我在 MainMenu 类上定义了以下属性
protected String languague="en";
protected String country="UK";
protected Locale currentLocale=new Locale(languague, country);
protected ResourceBundle
messages=ResourceBundle.getBundle("MessageBundle",currentLocale);
有了这个,我的主菜单适用于不同的语言。但是当我打开一个新窗口时会发生什么?也许我可以再次声明它(重复代码太多),或者我可以在调用新窗口实例时传递一些数据(这看起来不时尚)。与其他可能的首选项设置相同。
这也让我想知道我必须如何构建程序 structre。我的意思是,从 SWT 应用程序窗口(主菜单)开始是正确的,然后从那里调用其他 SWT 应用程序窗口,这些窗口将是不同的模块(客户、产品) ? 也许我必须建立一个独立的 Main 类,我将在其中调用 MainMenu 类,并在其中定义语言资源和偏好资源?
另外,我想知道是否必须像语言(.properties 文件)一样保存用户首选项
我想我可以通过很多方法来做到这一点,但我想知道哪种方法是推荐的、标准化的和最简单的方法。
我希望我解释得很好。在此先感谢!