Qt学习记录(3)Qt资源文件的使用

一、创建一个新项目

二、使用Qt的ui界面

三、添加菜单栏、工具栏

四、使用Qt资源

1、右键mainwindow.cpp文件,选择在Explorer中显示

2、 将图片的文件夹放到项目位置下

3、创建Qt资源文件

右键工程文件夹,选择添加新的文件

选择Qt ---->Qt Resource File

给资源文件起名

最后会生成一个res.qrc的文件,就是Qt的资源文件

打开res.qrc文件

4、编辑资源文件

添加前缀,并且添加文件

5、使用的资源的语法

使用 ":  + 前缀名 + 文件名"

    //使用添加Qt资源  ": + 前缀名 + 文件名"
    ui->actionnew->setIcon(QIcon("F:/Image/1.JPG"));
    ui->actionopen->setIcon(QIcon("F:/Image/1.JPG"));

效果图:

五、对话框

分类: 

  • 模态对话框
  • 非模态对话框

 1、模态对话框

不可以对其他窗口进行操作   阻塞

        //模态创建 阻塞功能
        QDialog dlg(this);
        //设置窗口大小
        dlg.resize(200,200);
        dlg.exec();
        qDebug() << "模态对话框弹出了";

2、非模态对话框

可以对其他窗口进行操作 

防止一闪而过,创建堆区

        //非模态对话框创建
        QDialog * dig2 = new QDialog(this);
        //设置窗口大小
        dig2->resize(200,200);

        dig2->show();
        //55号属性  ,防止关闭后没有被删除掉
        dig2->setAttribute(Qt::WA_DeleteOnClose,true);

        qDebug() << "非模态对话框弹出了";

六、标准对话框 --- 消息对话框

1、QMessgeBox 静态成员函数  创建对话框

2、错误、信息、提问、警告

3、参数

  • 参数1:父亲     
  • 参数2:标题   
  • 参数3:显示内容   
  • 参数4:按键类型
  • 参数5:默认关联回车的按钮(只有在提问对话框有意义)

4、返回值   也是StandardButton类型,利用返回值判断用户的输入

   工程:

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

MainWindow::MainWindow(QWidget *parent)
    : QMainWindow(parent)
    , ui(new Ui::MainWindow)
{
    ui->setupUi(this);

    //点击新建按钮  弹出一个对话框
    connect(ui->actionnew,&QAction::triggered,[=](){
        //对话框  分类
        //1、模态对话框(不可以对其他窗口进行操作)    非模态对话框(可以对其他窗口进行操作)
        //模态创建 阻塞功能
//        QDialog dlg(this);
//        dlg.resize(200,200);
//        dlg.exec();
//        qDebug() << "模态对话框弹出了";

        //非模态对话框创建
//        QDialog dig2 (this);  //在这个匿名函数中,执行完这个匿名函数后,这个对象没有保存
//        dig2.show();//一闪而过

        //2、非模态对话框创建
//        QDialog * dig2 = new QDialog(this);
//        //设置窗口大小
//        dig2->resize(200,200);
//        dig2->show();
//        dig2->setAttribute(Qt::WA_DeleteOnClose);
//        qDebug() << "非模态对话框弹出了";

 /********标准对话框*********************/

        //1、错误对话框(模态对话框)
//        QMessageBox::critical(this,"critical","错误");

        //2、信息对话框
//        QMessageBox::information(this,"info","信息");

        //3、问题对话框
        //参数1:父亲  参数2:标题名称  参数3:提示内容   参数4:按键的类型   参数5:默认关联回车的按键
//        QMessageBox::question(this,"ques","提问",QMessageBox::Save|QMessageBox::Cancel,QMessageBox::Cancel);

//        if(QMessageBox::Save == QMessageBox::question(this,"ques","提问",QMessageBox::Save|QMessageBox::Cancel,QMessageBox::Cancel))
//        {
//            qDebug() << "选择的是保存" ;

//        }
//        else
//        {
//            qDebug() << "选择的是取消" ;

//        }
        //4、警告对话框
        QMessageBox::warning(this,"wrg","警告");

    });
}

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

七、其他的标准对话框    

  • 5
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值