经常调用QMessageBox::infomation(.....)来调出信息弹窗,但是弹窗的按钮是不国际化的
考虑到弹窗国际化的需求,建议在类内写一个函数来统一处理弹窗按钮国际化的问题,具体如下:
int messageBox(QMessageBox::Icon box_icon = QMessageBox::NoIcon,
QString title = "",
QString content = "",
QMessageBox::StandardButtons buttons = QMessageBox::Ok,
QMessageBox::StandardButton defaultButton = QMessageBox::NoButton)
{
QMessageBox box(box_icon, title, content, buttons);
if (buttons & QMessageBox::Ok)
box.setButtonText(QMessageBox::Ok,tr("OK"));//可以根据qmessagebox.h里的按钮枚举进行逐一翻译,此处只翻译了两个
if (buttons & QMessageBox::Cancel)
box.setButtonText(QMessageBox::Cancel,tr("Cancel"));
box.setDefaultButton(defaultButton);
return box.exec();
}