标准对话框
main.cpp
#include "mainwindow.h"
#include <QApplication>
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
MainWindow w;
w.show();
return a.exec();
}
mainwindow.cpp
#include "mainwindow.h"
#include "ui_mainwindow.h"
#include "qdebug.h"
#include "qcolordialog.h"
#include "qfiledialog.h"
#include "qfontdialog.h"
#include "qinputdialog.h"
#include "qmessagebox.h"
#include "qprogressdialog.h"
#include "QTime"
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
ui->setupUi(this);
m_pErrorMessage = new QErrorMessage(this);
/* 放开后,关于QT槽函数触发两次的问题
* 1. 如果使用官方的写法on_btn_clicked(),可以不用写connect函数,会默认触发槽函数;
* 2. 如果此时再次使用connect连接,就会导数on_btn_clicked()被执行两次,可以通过以下方式避免:
* a. 修改槽函数命名,如btn_cLicked;
* b. 强制指定:connect(ui->colorDialog_pushButton, SIGNAL(clicked(bool)), this, SLOT(on_colorDialog_pushButton_clicked()), Qt::UniqueConnection);
*/
// connect(ui->colorDialog_pushButton, SIGNAL(clicked(bool)), this, SLOT(on_colorDialog_pushButton_clicked()));
}
MainWindow::~MainWindow()
{
delete ui;
delete m_pErrorMessage;
}
void MainWindow::on_colorDialog_pushButton_clicked()
{
/* QColorDialog::ShowALphaChannel 用来显示透明度(alpha)设置:0.0 — 1.0,1.0(窗口显示为255)表示完全不透明 */
QColor color = QColorDialog::getColor(Qt::red, this, QString::fromUtf8("颜色对话框")/*, QColorDialog::ShowAlphaChannel*/