QTE显示中文

在开发板上使用QTE显示中文的步骤,QTE版本4.4.3

1.编写并编译应用程序,使用Qt/Embedded的i18n支持,让应用程序支持多种语言显示

#include <QApplication>

#include <QLabel>

#include <QTranslator>

int main (int argc, char * argv[])

{

        QApplication    app(argc, argv);

        QTranslator     translator;

        translator.load(QString("hello_zh.qm",qApp->applicationDirPath());

        app.installTranslator(&translator);

        QLabel * label = new QLabel(QObject::tr("Hello, World!"), 0);

        label->show();

        return app.exec();

}

 

#qmake -project

#qmake
 
2.使用lupdate,lrelease和lingust工具,生成.ts和.qm等i18n需要的文件;编写并编译应用程序,使用Qt/Embedded的i18n支持,让应用程序支持多种语言显示,在上一步中生成的hello.pro文件末尾加入TRANSLATIONS的定义,TRANSLATIONS+=translator。

# lupdate -verbose hello.pro
Updating 'hello_zh.ts'...
0 known, 1 new and 0 obsoleted messages

此时目录中会生成一个hello_zh.ts的XML格式的文件,内容如下:

<!DOCTYPE TS><TS>

<context>

    <name>QObject</name>

    <message>

        <source>Hello, World!</source>

        <translation type="unfinished"></translation>

    </message>

</context>

</TS> 

 

3.翻译文件内容应该如下:
<!DOCTYPE TS><TS>

 

<context>

    <name>QObject</name>

    <message>

        <source>Hello, World!</source>

        <translation type="unfinished">你好,世界!</translation>

    </message>

</context>

</TS> 
 
OK,执行lrelease,生成相应.qm文件:

host# lrelease -verbose hello.pro
Updating 'hello_zh.qm'...
0 finished, 1 unfinished and 0 untranslated messages
4.复制字体到开发板上

 

支持中文的字体有unifont_160_50.qpf和wenquanyi_120_50.qpf,把它们复制到开发板相应的目录下

设置环境变量export QT_QWS_FONTDIR=/home/lib/fonts

运行程序hello -qws -font unifont 或者把unifont换成wenquanyi,注意要把hello_zh.qm也放在同一目录下。

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值