标准消息对话框
Question消息对话框
void MsgBoxDlg::showQuestionMag()
{
label->setText("Question Message Box");
switch (QMessageBox::question(this,"Question消息框","您现在已经修改完成,是否要结束程序?",QMessageBox::Ok|QMessageBox::Cancel,QMessageBox::Ok))
{
case QMessageBox::Ok:
label->setText("Question button/ok");
break;
case QMessageBox::Cancel:
label->setText("Question button/cancel");
break;
default:
break;
}
return;
}
Information消息对话框
void MsgBoxDlg::showInformationMag()
{
label->setText("Information Message Box");
QMessageBox::information(this,"Information 消息框","这是Information消息框测试,欢迎您!");
return;
}
Warning消息对话框
void MsgBoxDlg::showWarningMag()
{
label->setText("Warning Message Box");
switch (QMessageBox::warning(this,tr("Warning 消息框"),tr("您修改的内容仍未保存,是否要保存对文档的修改?"),QMessageBox::Save|QMessageBox::Discard|QMessageBox::Cancel,QMessageBox::Save)) {
case QMessageBox::Save:
label->setText("Question button/Save");
break;
case QMessageBox::Discard:
label->setText("Question button/Discard");
break;
case QMessageBox::Cancel:
label->setText("Question button/Cancel");
break;
default:
break;
}
return;
}
Critical消息对话框
void MsgBoxDlg::showCriticalMag()
{
label->setText("Critical Message Box");
QMessageBox::critical(this,"Critical 消息框","这是一个Critical消息测试!");
return;
}
about消息对话框
void MsgBoxDlg::showAboutMag()
{
label->setText("About Message Box");
QMessageBox::about(this,"About 消息框","这是一个About消息测试!");
}
aboutQt消息对话框
void MsgBoxDlg::showAboutQtMag()
{
label->setText("AboutQt Message Box");
QMessageBox::aboutQt(this,"About 消息框");
return;
}
自定义消息对话框
void Dialog::showCustomDlg()
{
label->setText("Custom Message Box");
QMessageBox customMsgBox;
customMsgBox.setWindowTitle("用户自定义消息框");
QPushButton *yesBtn=customMsgBox.addButton("yes",QMessageBox::ActionRole);
QPushButton *noBtn=customMsgBox.addButton("no",QMessageBox::ActionRole);
QPushButton *cancelBtn=customMsgBox.addButton(QMessageBox::Cancel);
customMsgBox.setText("这是一个用户自定义消息框!");
customMsgBox.setIconPixmap(QPixmap("Qt.png"));
customMsgBox.exec();
if(customMsgBox.clickedButton()==yesBtn)
label->setText("customMsgBox/yes");
if(customMsgBox.clickedButton()==noBtn)
label->setText("customMsgBox/no");
if(customMsgBox.clickedButton()==cancelBtn)
label->setText("customMsgBox/cancel");
return;
}