QT学习随记 (四)—— 资源文件的添加以及对话框的创建

2023-12-14 05:05:18

一、资源文件

1、将图片拷贝到项目位置下:

这里需要注意路径一致 E:\DONNY\Works\QTworks\D906_QtSource

?2、右键项目名称->添加新文件->Qt->Qt resouce File ->给资源文件起名->?生成xx.qrc文件

3、右键项目栏里面的资源,点击Open in editor 编辑资源,添加前缀,添加文件

4、保存->构建->qmake(这里解决使用绝对路径显示但相对路径不显示的问题)->运行

//使用绝对路径?

ui->actionNew->setIcon(QIcon("E:/DONNY/Works/QTworks/D906_QtSource/image/Iron.jpg"));

//使用相对路径? ? ? ? ? ??使用添加Qt资源 ":+前缀名+文件名"

ui->actionNew->setIcon(QIcon(":/image/Iron.jpg"));
ui->actionOpen->setIcon(QIcon(":/image/Spider.jpg"));

5、效果展示

二、模态和非模态对话框的创建

1、分类:模态和非模态

2、模态是不可以对其他窗口进行操作

阻塞

? ? QDialog dlg(this)
? ? dlg.exec();

3、非模态是可以对其他窗口进行操作?? ? ??

?防止一闪而过 创建堆区

 QDialog * dlg = new QDialog(this);
?dlg->show();
?

?防止内存泄露 创建后释放

dlg2->setAttribute(Qt::WA_DeleteOnClose);//55号 属性

三、标准对话框——消息对话框

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

参数1? 父亲? ? ?参数2? 标题? ? ?参数3? 提示内容? ? ? 参数4? 按键类型? ? ? 参数5? 默认关联回车按键

返回值 StandardButton类型 利用返回值判断用户输入

①错误对话框

QMessageBox::critical(this,"critical","错误");

②信息对话框

 QMessageBox::information(this,"information","信息");

③问题对话框

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

④警告对话框

QMessageBox::warning(this,"warning","警告");

四、拓展——其他标准对话框

颜色对话框 ? QColorDialog::getColor(R ?G ?B ?透明度)
文件对话框 ? QFileDialog::getOpenFileName(父亲,标题,默认路径,过滤文件)
字体对话框 ? QFontDialog::getFont(字体,字号)

文章来源:https://blog.csdn.net/CocoBrowniee/article/details/132730853
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。