前言
搞QT嘛,大多數(shù)都是軍工。都要國產化,而且消息對話框的按鈕的英文也不是很得勁,所以需要漢化。使用靜態(tài)函數(shù)的按鈕就是顯示英文,漢化的代碼如下。
void Widget::on_pushButton_clicked()
{
QMessageBox box(QMessageBox::Information, QStringLiteral("提示"), QStringLiteral("是否保存?"));
box.setStandardButtons(QMessageBox::Ok | QMessageBox::Cancel);
box.button(QMessageBox::Ok)->setText(QStringLiteral("是"));
box.button(QMessageBox::Cancel)->setText(QStringLiteral("否"));
int button = box.exec();
if(button == QMessageBox::Cancel){
qDebug() << QStringLiteral("點擊取消或者關閉");
}else{
qDebug() << QStringLiteral("點擊是");
}
}
void Widget::on_pushButton_2_clicked()
{
QMessageBox box(QMessageBox::Information, QStringLiteral("提示"), QStringLiteral("是否保存?"));
//通過 QMessageBox::RejectRole QMessageBox::AcceptRole 可以控制按鈕的位置
QPushButton *yesButton = box.addButton(QStringLiteral("是"), QMessageBox::RejectRole);
QPushButton *noButton = box.addButton(QStringLiteral("否"), QMessageBox::AcceptRole);
box.exec();
if(box.clickedButton() == yesButton){
qDebug() << QStringLiteral("是");
}else if(box.clickedButton() == noButton){
qDebug() << QStringLiteral("否");
}else{
qDebug() << QStringLiteral("點擊關閉按鈕了");
}
}
QmessageBox功能挺強大的,可以設置默認的按鈕,也可以設置點擊窗口的關閉按鈕實際上點擊的是那個按鈕,默認情況下是 QMessageBox::cancel
設置默認按鈕文章來源:http://www.zghlxwxcb.cn/news/detail-692982.html
設置點擊關閉按鈕的返回值文章來源地址http://www.zghlxwxcb.cn/news/detail-692982.html
到了這里,關于QT 消息對話框按鈕顯示的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網(wǎng)!