【发布时间】:2013-09-03 22:07:41
【问题描述】:
我目前正在开发一个可以动态更改语言的 Qt 应用程序。
为了翻译字符串,我使用了QTranslator 并在我的每个小部件中重载了changeEvent 方法,这方面一切正常。
项目的资源是另一回事。实际上,Qt 资源可以在应用程序的资源文件 (.qrc) 中具有 lang 属性,但 it seems that it is only loaded at the application startup, based on the user's locale 这不是我想要的。我希望能够在我的代码中触发 LanguageChange 事件时动态更改这些图标。
我可以使用 rcc 文件来更改资源文件,但似乎这个文件只会在运行时加载,因此在运行程序之前我将无法访问 Qt Designer 中的资源。
所以我可以在我的应用程序 .pro 文件中使用 resource_en.qrc 文件,这样我就可以使用 Qt Designer 设置我的图标,然后在运行时使用我的 .rcc files(resource_fr 等...)动态设置资源?但是我如何从资源中注销 .qrc 文件并将其替换为 .rcc 文件(如果可能)
希望我说得够清楚 :D
谢谢你:)
【问题讨论】:
-
快速搜索文档http://qt-project.org/wiki/How_to_create_a_multi_language_application你可以看看“切换语言”,这可能对你有帮助
标签: qt qt4 translation qt-creator