QLang 的目标是尽量简化用户的编程,所以要让你的程序支持多语言,我们也尽量简化您所需要进行的操作。
由于 QLang 支持 Delphi 和 C++ Builder,所以我们分开来说(实际上两者真的差不多)。
【Delphi】
- 打开工程选项菜单,在工程的搜索目录中,加入 QLang 的搜索目录。
- 在你程序的任意一个单元的uses 小节中,加入 qlang 的引用。
- 编译并运行你的程序吧。
【C++ Builder】
- 将下面的文件加入到工程中:pas、QRBTree.pas、QJson.pas。
- 编译并运行你的程序吧。
好的,现在您的程序已经支持多语言了,如果你不打算让用户自己切换语言的话,那么,一切已经完事了。您的程序将在您使用编辑器或手工翻译完相关的语言资源,生成相应的 QLang 语言文件后,自动根据用户的当前操作系统语言来切换了。
【多语言切换】
当然,如果您要让您的程序支持用户切换语言,您就需要在您的界面上放一个如TCombox 一类的控件,来提供一个支持的语言列表供用户选择。
一段简单的参考代码如下:
procedure TForm1.FormCreate(Sender: TObject); begin LangManager.EnumLanguages(cbxLanguage.Items); cbxLanguage.ItemIndex := cbxLanguage.Items.IndexOf(LangManager.ActiveLanguage.Name); end;
这样就将语言列表填充到 cbxLanguage 这个 TComboBox 的列表里了。然后响应 OnChange 事件来切换语言。
procedure TForm1.cbxLanguageChange(Sender: TObject); begin if cbxLanguage.ItemIndex >= 0 then LangManager.ActiveIndex := cbxLanguage.ItemIndex else LangManager.ActiveIndex := 0; end;
好了,你的第一个多语言应用程序基本准备就绪了,不过,对于追求上进的程序员来说,怎么可以这么没的挑战呢?所以,您可以接着看下一节。