QMessageBox是弹出的消息框,分为:错误、消息、问题、警告。
//具体参数如下:
critical(QWidget *parent, const QString &title, const QString &text, QMessageBox::StandardButtons buttons = Ok, QMessageBox::StandardButton defaultButton = NoButton) //错误
information(QWidget *parent, const QString &title, const QString &text, QMessageBox::StandardButtons buttons = Ok, QMessageBox::StandardButton defaultButton = NoButton) //消息
question(QWidget *parent, const QString &title, const QString &text, QMessageBox::StandardButtons buttons = StandardButtons(Yes | No), QMessageBox::StandardButton defaultButton = NoButton) //问题
warning(QWidget *parent, const QString &title, const QString &text, QMessageBox::StandardButtons buttons = Ok, QMessageBox::StandardButton defaultButton = NoButton) //警告
一、错误
#include "mainwindow.h"
#include "ui_mainwindow.h"
#include <QMessageBox> //QMessageBox的头文件
MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWindow)
{
ui->setupUi(this);
connect(ui->actionnew,&QAction::triggered,this,[=]()
{
QMessageBox::critical(this,"错误","堆栈溢出!");
});
}
MainWindow::~MainWindow()
{
delete ui;
}
二、消息
#include "mainwindow.h"
#include "ui_mainwindow.h"
#include <QMessageBox> //QMessageBox的头文件
MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWindow)
{
ui->setupUi(this);
connect(ui->actionnew,&QAction::triggered,this,[=]()
{
QMessageBox::information(this,"消息","成功创建!");
});
}
MainWindow::~MainWindow()
{
delete ui;
}
三、问题
#include "mainwindow.h"
#include "ui_mainwindow.h"
#include <QMessageBox> //QMessageBox的头文件
#include <QDebug>
MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWindow)
{
ui->setupUi(this);
connect(ui->actionnew,&QAction::triggered,this,[=]()
{
if (QMessageBox::Save == QMessageBox::question(this,"询问","是否保存",QMessageBox::Cancel | QMessageBox::Save),QMessageBox::Save)
{
qDebug() << "选择保存";
}
else
{
qDebug() << "选择取消";
}
});
}
MainWindow::~MainWindow()
{
delete ui;
}
补充:
QMessageBox::Ok
QMessageBox::Open
QMessageBox::Save
QMessageBox::Cancel
QMessageBox::Close
QMessageBox::Discard
QMessageBox::Apply
QMessageBox::Reset
QMessageBox::RestoreDefaults
QMessageBox::Help
QMessageBox::SaveAll
QMessageBox::Yes
QMessageBox::YesToAll
QMessageBox::No
QMessageBox::NoToAll
QMessageBox::Abort
QMessageBox::Retry
QMessageBox::Ignore
QMessageBox::NoButton
四、警告
#include "mainwindow.h"
#include "ui_mainwindow.h"
#include <QMessageBox> //QMessageBox的头文件
MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWindow)
{
ui->setupUi(this);
connect(ui->actionnew,&QAction::triggered,this,[=]()
{
QMessageBox::warning(this,"警告","发出警告!");
});
}
MainWindow::~MainWindow()
{
delete ui;
}