Qt使用Translation及使用资源文件

Qt支持多语言及资源文件的使用,以下记录使用方法:

1、使用Translation:

  1. pro文件中添加:

    1
    2
    3
    4
    TRANSLATIONS = $$TARGET"_zh_CN.ts"

    #注意,生成qm文件后,需要手工运行下qmake命令
    system($$shell_path(copy $$PWD/*.qm $$OUT_PWD/))

  2. main.cpp文件中添加:

    1
    2
    3
    4
    5
    6
    #include <QTranslator>

    QString locale = QLocale::system().name();
    QTranslator translator;
    translator.load(a.applicationName() + "_" + locale + ".qm");
    a.installTranslator(&translator);
    在工程目录下会生成一个“工程名_zh_CN.ts”的文件,打开后进行翻译,程序会自动载入。

2、使用资源文件:

创建qrc资源文件,使用 rcc -binary myresource.qrc -o myresource.rcc命令,将qrc文件编译为二进制文件。 在程序中,首先包含资源头文件

1
#include <QResource>
具体使用:

  • 使用:QResource::registerResource("./myresource.rcc");,载入资源;
  • 使用:QResource::unregisterResource("./myresource.rcc");,卸载资源。

qtCreator的ui编辑器里使用资源方法: 在qtCreator里加入上述qrc文件,正常使用界面编辑器制作界面,然后在pro文件中删除该qrc资源文件,将上述编译后的myresource.rcc文件复制到exe文件同路径下,图标就可以正常的出现了。

本文来自:Qt使用Translation及使用资源文件