在程序中用QMessageBox中的静态方法弹出个提示框,汉化程序后但其按钮还是“OK”“Cancel”, 这是因为没有加载QT内置的汉化文件. 

    拷贝$(QTDIR)/translations/qt_zh_CN.qm及当前应用目录,编码

    

int main(int argc,char **argv)
{
QApplication app(argc,argv);

// 一个QTranslator对应一个翻译文件,需要安装两个QTranslator

// 加载QT汉化文件
QString path;
path=QString("qt_zh_CN.qm");

QTranslator qtTrans;
qtTrans.load(path);
qApp->installTranslator(&qtTrans);

// 加载本程序汉化文件
path=QString("test_zh.qm");

QTranslator tTrans;
tTrans.load(path);
qApp->installTranslator(&tTrans);

QMessageBox::information(NULL,QObject::tr("information"),QObject::tr("Hello world"));

return app.exec();
}

 

  运行:

   

  

QMessageBox 按钮汉化_QT