CnPack多语组件是CnPack组件包中的一个重要组成部分,主要用来用来实现多语言界面。它们虽未组成可安装的独立组件包,但它们功能相对独立,在组件板上独占一页,和其他组件关联不大。
1、 最简单的多语组件的使用步骤
1. 建立一空工程,拖放一些可视化组件在上面。保存。
2. 拖一TCnHashLangFileStorage,添加一语言条目。
3. 拖一TCnLangMgr,LanguageStorage设置为刚才的CnHashLangFileStorage1。
4. 拖一TCnLangTranslator,双击打开翻译管理器,生成语言条目并翻译、保存。
5. 运行,代码中写CnLanguageManager.CurrentLanguageIndex := 0;即可看到翻译后的界面。其中0为第一个语言条目的索引号。
6. 如工程中有需要多语化的字符串常量,有两种方法可将其多语化:
1. 自动翻译型:将需要多语化的字符串其声明为var或resourcestring型,然后在程序初始化时调用RegisterTranslateString或RegisterTranslateResourceString将字符串变量或资源字符串注册到多语管理器中。然后打开翻译管理器增加这些字符串的翻译条目。这样在运行期改变语言的情况下,这些注册了的字符串可被自动翻译成LanguageStorage中的对应内容。这种方式省力,但在需要自定义翻译细节的场合不适用。
2. 手动翻译型:将需要多语化的字符串其声明为var,然后打开翻译管理器增加这些字符串的翻译条目。并且在多语管理器的语言变化通知事件中写TranslateStr进行翻译。这种方式适合于针对不同语言需要进行不同翻译的场合,比较灵活。