我做了个国际化的例子,在fc9上没有问题,但在开发板上不行。经交叉编译后,我把执行文件和qm文件放在一起下载到开发板运行,结果只能显示中文的,中文字库也有,是要翻译成英文的。郁闷中。。。。。
下面是main.cpp的代码,请高人指点!
#include <QtGui>
#include <QtCore>
#include <QTextCodec>
#include <QTranslator>
#include"mainconsole.h"
int main(int argc, char* argv[])
{
QApplication app(argc, argv);
QTextCodec::setCodecForTr(QTextCodec::codecForName("gb18030"));
//QTextCodec::setCodecForTr(QTextCodec::codecForLocale());
//QString locale = QLocale::system().name();
QTranslator *translator = new QTranslator(0);
//translator.load(QString("test_") + locale);
translator->load("test_EN.qm");
qApp->installTranslator(translator);
CMainConsole mainconsole;
QSplashScreen *splash = new QSplashScreen;
splash->setPixmap(QPixmap(":/images/splash.png"));//配置图片
splash->show();//显示图片
qApp->processEvents();
Qt::Alignment topRight = Qt::AlignCenter;
QFont font2("simhei",100,20,false);//simkai
splash->setFont(font2);
//splash->showMessage(QObject::tr("Setting up the main window..."),topRight, Qt::white);//显示信息
mainconsole.setGeometry(40,40, 800,480);
splash->showMessage(QObject::tr("系统初始化..."),topRight, Qt::white);//显示信息
mainconsole.show();
splash->finish(&mainconsole);//图片一直显示到mainWin加载完成
delete splash;//释放空间,节省内存
return app.exec();
}