Lazarus messagebox:如何本地化按钮

时间:2016-03-07 16:04:03

标签: lazarus freepascal

我想本地化MesssageBoxMessageDlgInputQuery等按钮。 我在resourcestring中看到lclstrconsts存在{&1}}:" OK" /"取消" ....但我想使用asssignments设置按钮字符串。

怎么做?

我在Win32上需要它。我看到德语/ Rus OS显示了En按钮。

2 个答案:

答案 0 :(得分:2)

这就是MessageDlghttp://delphi.xcjc.net/viewthread.php?tid=47562的完成方式。

应定义带rs前缀的变量。

其他组件可以以相同的方式进行本地化。

答案 1 :(得分:1)

维基中有几篇关于本地化的文章:

Translating/Internationalization/Localization

简而言之:

  1. 设置"启用i18n"在项目选项 - > i18n,设置PO输出目录(例如locale
  2. 重新编译项目
  3. 将创建的yourproject.po文件复制到yourproject.de.poyourproject.it.po等,以便将所需语言复制到同一目录中。
  4. locale复制到项目*.po文件的lazarus/lcl/languages目录,以翻译拼箱。
  5. 将单位LCLTranslator添加到主表单的uses子句中。
  6. 在某处调用SetDefaultLang('it');以设置所需的翻译(本例中为意大利语)。检查GetDefaultLang功能结果。
  7. 检查一切正常

    请注意,(3)是必需的。

    您可能会发现其他第三方库中的PO已准备就绪,如果有的话。