QT从入门到实战完整版 P20 P21 P22

#include "mainwindow.h"
#include "ui_mainwindow.h"
#include <QDialog>
#include <QDebug>

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(400,300);
        dlg2->show(); //为了避免持续的创建删除影响整个内存的使用
        dlg2->setAttribute(Qt::WA_DeleteOnClose); //55号 属性
        qDebug()<<"非模态对话框弹出了";
    });
}

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

#include "mainwindow.h"
#include "ui_mainwindow.h"
#include <QDialog>
#include <QDebug>
#include <QMessageBox>

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(400,300);
    //    dlg2->show(); //为了避免持续的创建删除影响整个内存的使用
    //    dlg2->setAttribute(Qt::WA_DeleteOnClose); //55号 属性
    //    qDebug()<<"非模态对话框弹出了";

        //消息对话框
        //QMessageBox::critical(this,"critical","错误"); //错误对话框
        //QMessageBox::information(this,"info","信息"); //信息对话框
     //   if(QMessageBox::Save== QMessageBox::question(this,"ques","提问",QMessageBox::Save|QMessageBox::Cancel,QMessageBox::Cancel)) //参数1父亲,参数2标题,参数3提示内容,参数4按键类型,参数5默认关联回车按键,提问对话框
     //   {
     //      qDebug()<<"选择的是保存";
     //   }
     //   else
     //   {
     //      qDebug()<<"选择的是取消";
     //   }

        QMessageBox::warning(this,"warning","警告");//警告对话框

    });
}

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

#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(400,300);
    //    dlg2->show(); //为了避免持续的创建删除影响整个内存的使用
    //    dlg2->setAttribute(Qt::WA_DeleteOnClose); //55号 属性
    //    qDebug()<<"非模态对话框弹出了";

        //消息对话框
        //QMessageBox::critical(this,"critical","错误"); //错误对话框
        //QMessageBox::information(this,"info","信息"); //信息对话框
     //   if(QMessageBox::Save== QMessageBox::question(this,"ques","提问",QMessageBox::Save|QMessageBox::Cancel,QMessageBox::Cancel)) //参数1父亲,参数2标题,参数3提示内容,参数4按键类型,参数5默认关联回车按键,提问对话框
     //   {
     //      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,"打开文件","D:\\document storage\\work","(*.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;
}

posted @ 2023-07-18 18:13  Vijurria  阅读(32)  评论(0编辑  收藏  举报