QMessageBox按钮简单实现中文显示

     在Qt中经常用QMessageBox显示一些临时信息,调用的代码如下。但是,两个按钮却是英文的:

int result = QMessageBox::information(this->qMGWindow,QObject::tr("提示"),QObject::tr("显示信息!"),QMessageBox::Yes,QMessageBox::No);

    在网上,有一些解决方法,但是过于麻烦,无意中发现采用下面的代码能够实现中文显示:

int result = QMessageBox::information(this->qMGWindow,QObject::tr("提示"),QObject::tr("显示信息!"),QObject::tr("确定"),QObject::tr("取消"));

    这样虽然可以实现QMessageBox的按钮显示中文,但是会对对话框的执行结果造成影响,对话框无法再判断出执行结果,无意中找到下面的代码能够让对话框正确识别哪一个按钮被点击:

int result = QMessageBox::information(dialog,QObject::tr("提示"),information,QObject::tr("确定"),QObject::tr("取消"));
if (result == QObject::tr("确定").toInt())
{
            
}
else if (result == QObject::tr("取消").toInt()) { }

 

 

posted @ 2013-07-04 14:52  ppffs  阅读(3083)  评论(1编辑  收藏  举报