文章目录

  • 前言
  • 如何学习标准对话框
  • QMessageBox消息对话框
    • 应用
    • 属性
    • 实操
  • QFileDialog文件对话框
    • 应用
    • 属性
    • 实操

前言

Qt为开发者提供了一些可复用的对话框,他对我们的开发是很重要的。下面我们就来学习


提示:以下是本篇文章正文内容,下面案例可供参考

如何学习标准对话框

其实在Qt中的对话框遵守相同的原则:

DialogType dialog(this);
dialog.Setproperties(...);//设置属性if(dialog.exec() == DialogType::value)
{//处理具体的事情
}

其实是很简单的,很快就能学会。

QMessageBox消息对话框

这就相当于是一个QMessageBox

应用

1、为用户提示重要信息
2、强制用户操作选择

属性

设置窗口标题

setWindowTitle(QString);

设置对话框中的字符

setText(QString s);

设置图标

setIcon(Icon);Qt中有预定义的图标使用,如下:QMessageBox::NoIcon
0
the message box does not have any icon.
QMessageBox::Question
4
an icon indicating that the message is asking a question.
QMessageBox::Information
1
an icon indicating that the message is nothing out of the ordinary.
QMessageBox::Warning
2
an icon indicating that the message is a warning, but can be dealt with.
QMessageBox::Critical
3
an icon indicating that the message represents a critical problem.

设置按钮:
如下图,设置的是最下面的三个按钮,也可以设置2个1个等等…

最后:

if(messagebox.exec() == QMessageBox::Ok)
{}

提示:QMessageBox::Ok只有在上面这一步设置了,我们才能写。
点击Ok后,我们就会进入if

实操

因为代码比较少,所以我直接在main.cpp中写了,大家可以在类中写

#include "form.h"
#include <QApplication>
#include "QMessageBox"
#include <QDebug>int main(int argc, char *argv[])
{QApplication a(argc, argv);QMessageBox msg;msg.setWindowTitle("Window Title");msg.setText("This is a message dialog!");msg.setIcon(QMessageBox::Information);//会有三个按钮msg.setStandardButtons(QMessageBox::Ok | QMessageBox::Cancel | QMessageBox::YesToAll);if( msg.exec() == QMessageBox::Ok ){qDebug() << "Ok button is clicked!";}return a.exec();
}

QFileDialog文件对话框

应用

1、打开文件
2、保存文件

属性

设置模式

setAcceptMode();QFileDialog::AcceptOpen//打开模式
0
QFileDialog::AcceptSave//保存模式
1

设置打开/保存文件是否为1个/多个/其他

setFileMode()QFileDialog::AnyFile
0
The name of a file, whether it exists or not.
QFileDialog::ExistingFile
1
The name of a single existing file.
QFileDialog::Directory
2
The name of a directory. Both files and directories are displayed. However, the native Windows file dialog does not support displaying files in the directory chooser.
QFileDialog::ExistingFiles
3
The names of zero or more existing files.

取文件中的数据

selectedFiles()

设置只打开哪些后缀的文件:

setNameFilter()

实操

 QFileDialog dlg;dlg.setAcceptMode(QFileDialog::AcceptOpen);dlg.setNameFilter("Text(*.txt)");dlg.setFileMode(QFileDialog::ExistingFiles);if( dlg.exec() == QFileDialog::Accepted ){//selectFiles()返回值为QStringList,意为QString的链表//使用他的使用需要包含QStringList的头文件QStringList fs = dlg.selectedFiles();for(int i=0; i<fs.count(); i++){qDebug() << fs[i];}}

Qt之标准对话框(QMessageBox、QFileDialog)相关推荐

  1. ubuntu 中的qt怎么调用graphics.h_Qt 标准对话框之 QFileDialog

    Qt 标准对话框之 QFileDialog <Qt 学习之路>已经写到了第15篇,然而现在再写下去却有点困难,原因是当初并没有想到会连续的写下去,因此并没有很好的计划这些内容究竟该怎样去写 ...

  2. 【Qt教程】1.11 - Qt5 标准对话框QMessageBox(关于、错误、信息、警告、问题、颜色、字体、文件对话框)

    所谓标准对话框,是Qt内置的一些列对话框,用于简化开发.其实是调用的系统窗口.事实上,有很多对话框都是通用的,比如打开文件.设置颜色.打印设置等.这些对话框在素有程序中几乎相同,因此没有必要在每一个程 ...

  3. Qt 学习之路 2(15):标准对话框 QMessageBox

    所谓标准对话框,是 Qt 内置的一系列对话框,用于简化开发.事实上,有很多对话框都是通用的,比如打开文件.设置颜色.打印设置等.这些对话框在所有程序中几乎相同,因此没有必要在每一个程序中都自己实现这么 ...

  4. Qt学习笔记-5-Qt标准对话框之QFileDialog

    所谓标准对话框,其实就是 Qt 内置的一些对话框,比如文件选择.颜色选择等等. QFileDialog 是 Qt 中用于文件打开和保存的对话框. 之前写的openAction只是弹出了一个消息对话框, ...

  5. Qt中标准对话框实例,QObject::tr()的作用

    函数 tr()全名是QObject::tr(),被它处理的 字符串可以 使用工具提 取出来翻译 成其他语言, 也就是做国际化使用. 只要记住,Qt 的最佳实践:如果你想让你的程序国际化的话,那么,所有 ...

  6. Qt弹出对话框“QMessageBox“的按钮名称改为中文

    1.QMessageBox 用默认的QMessageBox弹出的按钮都是英文状态,可以通过下面两种方式更改按钮名称,,通常tr("xx")都是设置英文,通过翻译设置为中文. 实现效 ...

  7. Qt学习之路(17): Qt标准对话框之QMessageBox

    好久没有更新博客,主要是公司里面还在验收一些东西,所以没有及时更新.而且也在写一个基于Qt的画图程序,基本上类似于PS的东西,主要用到的是Qt Graphics View Framework.好了,现 ...

  8. 【Qt开发】Qt标准对话框之QMessageBox

    好久没有更新博客,主要是公司里面还在验收一些东西,所以没有及时更新.而且也在写一个基于Qt的画图程序,基本上类似于PS的东西,主要用到的是Qt Graphics View Framework.好了,现 ...

  9. QT学习笔记(五):Qt5的8种标准对话框示例

    QT学习笔记(五):Qt5的8种标准对话框示例 前言 实例展示 1.颜色对话框 2.文件对话框 3.字体对话框 4.输入对话框 5.消息对框 6.进度对话框 7.错误信息对话框 8.向导对话框. 前言 ...

最新文章

  1. (零)我为什么要写Linux学习笔记?
  2. 传输滤波器的选型及使用说明
  3. SQL Server - 在SQL Server中创建ASSEMBLY
  4. aws rds监控慢sql_探索AWS RDS SQL Server上SQL Server集成服务(SSIS)
  5. php设计模式总结-单件模式
  6. matlab repmat_三行MATLAB实现动漫风格照片
  7. HeadFirstJava——4_对象的行为
  8. python ctype_Python ctype帮助:使用C unsigned char指针
  9. 【Rust日报】2022-07-06 Android 平台中的 Rust
  10. macOs 静默安装dmg文件
  11. 想知道照片一键换天空怎么弄?推荐两款图片编辑软件
  12. 车载网络测试 - UDS诊断篇 - 诊断数据简析
  13. 【RFC5382 TCP 的 NAT 行为要求】(翻译)
  14. 使用ansys workbench 的LSDYNA模块研究碰撞的接触设置
  15. 树莓派 MFRC522 读取
  16. 北科大协同中心计算机,2021考研调剂:北科大钢铁共性技术协同创新中心公告
  17. 香港科技大学委任汪扬教授为副校长(大学拓展)
  18. 【文献学习】 2021 Deep-Waveform: A Learned OFDM Receiver Based on Deep Complex Convolutional Networks
  19. 小学生 C++画图 Go C 编程 第7课 奇异的花朵
  20. leetcode:删除有序数组中的重复项

热门文章

  1. Java设计模式-工厂设计模式
  2. ps aux命令解析
  3. Pandas之数据框运算
  4. java throw 和throws的区别
  5. SQL按月统计数据量
  6. shiftdim matlab,科学网—matlab函数(矩阵相关) - 黄妮妮的博文
  7. 好消息!2020青少年编程等级考试开始报名,在家就能考!
  8. 计算机非线编辑配置,做非线编什么样的电脑配置最合理!
  9. Collection集合习题
  10. 量子计算(十八):量子计算机