1. 程式人生 > 其它 >QT-對話方塊

QT-對話方塊

 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.h

#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 <QDialog>
#include <QDebug>
#include <QMessageBox>
#include <QColorDialog>
#include <QFileDialog>
#include <QFontDialog>
MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::MainWindow)
{
    ui->setupUi(this);

    //點選新建按鈕 彈出一個對話方塊
    connect(ui->actionNew,&QAction::triggered,[=](){
        //對話方塊 分類
        //模態對話方塊 (不可以對其他視窗進行操作) 非模態對話方塊 (可以對其他視窗進行操作)
        //模態建立 阻塞
//        QDialog dlg(this);
//        dlg.resize(200,100);
//        dlg.exec();

//        qDebug() << "模態對話方塊彈出了";


        //非模態對話方塊
//          QDialog * dlg2 = new QDialog (this);
//          dlg2->resize(200,100);
//          dlg2->show();
//          dlg2->setAttribute(Qt::WA_DeleteOnClose); //55號 屬性
//          qDebug() << "非模態對話方塊彈出了";



        //訊息對話方塊
        //錯誤對話方塊
        //QMessageBox::critical(this,"critical","錯誤");

        //資訊對話方塊
        //QMessageBox::information(this,"info","資訊");

        //提問對話方塊
        //引數1  父親  引數2  標題  引數3  提示內容  引數4 按鍵型別  引數5 預設關聯回車按鍵
//        if (QMessageBox::Save  ==  QMessageBox::question(this,"ques","提問",QMessageBox::Save|QMessageBox::Cancel,QMessageBox::Cancel))
//        {
//            qDebug() << "選擇的是儲存";

//        }
//        else
//        {
//            qDebug() << "選擇的是取消";
//        }


        //警告對話方塊
        //QMessageBox::warning(this,"warning","警告");

        //其他標準對話方塊
        //顏色對話方塊
//        QColor color =  QColorDialog::getColor(QColor(255,0,0));
//        qDebug() << "r = " << color.red() << " g = " << color.green() << " b  = " << color.blue() ;

        //檔案對話方塊  引數 1  父親  引數2  標題   引數3  預設開啟路徑  引數4  過濾檔案格式
        //返回值是 選取的路徑
//         QString str = QFileDialog::getOpenFileName(this,"開啟檔案","C:\\Users\\zhangtao\\Desktop","(*.txt)");
//         qDebug() << str;

         //字型對話方塊
        bool flag;
        QFont font = QFontDialog::getFont(&flag,QFont("華文彩雲",36));
        qDebug() << "字型:" << font.family().toUtf8().data() << " 字號 "<< font.pointSize() << " 是否加粗"<< font.bold() << " 是否傾斜"<<font.italic();
    });
}

MainWindow::~MainWindow()
{
    delete ui;
}