一、用法
1、消息盒子 QMessageBox
#include <QMessageBox>
//用消息盒子提示
int ret = QMessageBox::warning(this,"操作提示","您确定要退出吗?", QMessageBox::Yes, QMessageBox::No);
if(ret == QMessageBox::Yes)
{
this->close();
}else {
}
2、文件对话框 QFileDialog
#include <QFileDialog>
//通过文件对话框获取文件路径
QString filename = QFileDialog::getOpenFileName(this);
//把文件路径设置在LineEdit
ui->lineEdit->setText(filename);
3、颜色对话框 QColorDialog
#include<QColorDialog>
//通过颜色对话框修改标签的背景颜色
QColor color = QColorDialog::getColor();
//字符串打包sprintf
QString sty = QString("background-color:%1").arg(color.name());
ui->label->setStyleSheet(sty);//代码动态修改样式
4、字体对话框 QFontDialog
//获取字体对象
bool ok = false;
QFont font = QFontDialog::getFont(&ok,this);
if(ok)
{
this->ui->label->setFont(font);//设置字体
}
5、输入对话框 QInputDialog
//通过输入对话框获取字符串
QString text = QInputDialog::getText(this, "信息录入","输入密码",QLineEdit::Password);
ui->label->setText(text);
6、自定义对话框 QDialog
QDialog dialog;
dialog.setWindowTitle("自定义对话框测试");
dialog.resize(200, 100);
QPushButton yesBt("确定",&dialog);
yesBt.setGeometry(0, 40, 100, 40);
QPushButton noBt("取消",&dialog);
noBt.setGeometry(100, 40, 100,40);
//关联按钮信号
connect(&yesBt, &QPushButton::clicked, &dialog, &QDialog::accept);
connect(&noBt, &QPushButton::clicked, &dialog, &QDialog::reject);
int ret = dialog.exec();//对话框 --当对话框调用accept, reject函数就会退出
if(ret == QDialog::Accepted)
{
qDebug()<<"你点击了确定";
}
if(ret == QDialog::Rejected)
{
qDebug()<<"你点击了取消";
}
二、综合应用