资源文件的学习
建立新项目,项目文件视图如下所示:
右击项目名称,点击添加新文件,选择qt->resource flie
得到项目视图窗口如下:
右键点击res.qrs,选择open in editor,左下角出现界面如下:
选择添加,添加前缀/,然后添加文件(将文件资源放入到项目目录下),得到视图如下:
mainwindow.cpp修改如下:
#include "mainwindow.h"
#include "ui_mainwindow.h"
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
ui->setupUi(this);
//设置资源文件路径
ui->actionnew->setIcon(QIcon(":/resource/1.jpg"));
ui->actionopen->setIcon(QIcon(":/resource/2.jpg"));
resize(600,400);
}
MainWindow::~MainWindow()
{
delete ui;
}
对话框的学习
新建项目,视图如下:
对ui文件做修改如下:
mainwindow.cpp修改如下:
#include "mainwindow.h"
#include "ui_mainwindow.h"
#include<QDebug>
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
ui->setupUi(this);
connect(ui->actionnew,&QAction::triggered,this,[=](){
qDebug()<<"点击新建按钮,弹出对话框";
});
}
MainWindow::~MainWindow()
{
delete ui;
}
则点击new,输出如下:
对话框的学习
对话框分为模态对话框和非模态对话框
测试代码如下(对mainwindow.cpp进行修改):
#include "mainwindow.h"
#include "ui_mainwindow.h"
#include<QDebug>
#include<QDialog>
#include<QMessageBox>
#include<QColorDialog>
#include<QFileDialog>
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
ui->setupUi(this);
//resize(600,400);
connect(ui->actionnew,&QAction::triggered,this,[=](){
//对话框分为两种:模态对话框(不可以对其他窗口进行操作)和非模态对话框(可以对其他窗口进行操作)
//模态对话框
//QDialog dlg(this);
//dlg.resize(400,200);
//dlg.exec();
//非模态对话框开辟到栈上,一闪而过
//QDialog dlg2(this);
//dlg2.resize(400,200);
//dlg2.show();
//非模态对话框开辟到堆上
//QDialog* dlg3 = new QDialog(this);
//dlg3->resize(400,200);
//设置属性,关闭非模态对话框时,会释放堆上空间
//dlg3->setAttribute(Qt::WA_DeleteOnClose,);
//使用标准对话框,MessageBox
//错误对话框
//QMessageBox::critical(this,"error","critical");
//消息对话框
//QMessageBox::information(this,"information","message");
//选择对话框
//QMessageBox::question(this,"question","right",QMessageBox::Save|QMessageBox::Cancel,QMessageBox::Ok);
//警告对话框
//QMessageBox::warning(this,"warning","warning");
//选择颜色对话框
//QColor color = QColorDialog::getColor(QColor(255,0,0));
//qDebug()<<color.red()<<color.green()<<color.blue();
//选择文件对话框
QString path = QFileDialog::getOpenFileName(this,"打开文件","D:\\Start\\QDialog\\QDialog","*.cpp *.txt");
qDebug()<<path;
});
}
MainWindow::~MainWindow()
{
delete ui;
}