QT-對話方塊
阿新 • • 發佈:2022-04-06
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; }