【Qt 学习笔记】Qt窗口 | 对话框 | Qt对话框的分类及介绍


  • 博客主页:Duck Bro 博客主页
  • 系列专栏:Qt 专栏
  • 关注博主,后期持续更新系列文章
  • 如果有错误感谢请大家批评指出,及时修改
  • 感谢大家点赞👍收藏⭐评论✍

Qt窗口 | 对话框 | 模态对话框

文章编号:Qt 学习笔记 / 51


一、对话框的介绍

对话框(dialog box)是计算机图形用户界面中常用的一种组件,用于和用户进行交互。它通常以弹出窗口的形式呈现,包含一个或多个文本区域和一个或多个按钮,用于显示信息、收集用户输入或进行确认操作。

对话框可以用于多种目的,例如展示警告、提示信息、错误消息,询问用户是否确认某个操作,让用户输入文本或选择选项等。

对话框是图形用户界面中用户与程序进行交互的重要方式之一,能够提供更加友好和直观的操作体验。

在这里插入图片描述


二、对话框的分类

1. 模态对话框

模态对话框是指在对话框打开时,用户只能与对话框进行交互,而不能与其他窗口进行交互,直到对话框关闭。模态对话框会阻塞程序的执行,直到用户对对话框进行操作并关闭对话框。

使用模态对话框可以在需要等待用户输入或确认的情况下,暂停程序的执行,确保用户在完成对话框里的操作之后才能继续执行程序的其他部分。

模态对话框通常用于需要用户进行确认、输入或者选择的场景,如消息对话框、输入对话框、选择对话框等。

2. 非模态对话框

非模态对话框是指在对话框打开时,用户可以同时与对话框和其他窗口进行交互,不会阻塞程序的执行。非模态对话框允许用户在对话框打开的同时执行其他操作,而不需要等待对话框关闭。

非模态对话框通常用于提供一些辅助功能或者信息展示,不需要用户立即进行确认或输入的场景。例如,可以使用非模态对话框来显示一些临时信息或者提供一些可选功能菜单。

3. 混合属性对话框

混合属性对话框(Mixed Attribute Dialog)是指同时具有模态和非模态特性的对话框。它能在对话框显示期间阻塞其所属窗口上的其他操作,但又可以供用户继续操作其他非对话框部件。

在Qt中,可以通过设置对话框的属性来实现混合属性。使用Qt的QDialog类,可以通过设置setModal属性为true来创建模态对话框,设置为false则创建非模态对话框。

4. Qt内置对话框

内置对话框 说明
QMessageBox 用于显示消息、警告、错误等信息的对话框。
QInputDialog 用于获取用户输入的对话框,可以用于获取文本、整数、浮点数等类型的输入。
QColorDialog 用于选择颜色的对话框。
QFileDialog 用于选择文件或目录的对话框。
QFontDialog 用于选择字体的对话框。
QProgressDialog 用于显示进度条的对话框。
QPrintDialog 用于打印文档的对话框。
QPageSetupDialog 用于设置页面布局的对话框。

三、对话框的创建

  1. 点击新建文件或项目
    在这里插入图片描述

  2. 选择项目Application,选择Qt Widgets Application
    在这里插入图片描述

  3. 编辑名称,选择创建路径
    在这里插入图片描述

  4. 选择qmake
    在这里插入图片描述

  5. 选择QDialog类
    在这里插入图片描述

  6. 以此点击下一步,完成Qt对话框项目的创建
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述


在这里插入图片描述

相关推荐

  1. Qt对话框介绍

    2024-06-06 13:48:08       18 阅读
  2. qt对话框功能介绍

    2024-06-06 13:48:08       6 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-06-06 13:48:08       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-06-06 13:48:08       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-06-06 13:48:08       18 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-06-06 13:48:08       20 阅读

热门阅读

  1. 【车载开发系列】自动驾驶技术--HUD技术

    2024-06-06 13:48:08       9 阅读
  2. idea2024年最新激活码,即拿即用

    2024-06-06 13:48:08       12 阅读
  3. SQL入门详细教程

    2024-06-06 13:48:08       8 阅读
  4. 学习VUE3——组件(一)

    2024-06-06 13:48:08       8 阅读
  5. 【数据库系统概论】事务

    2024-06-06 13:48:08       10 阅读
  6. 小程序怎样进行本地存储的读、写、删、清?

    2024-06-06 13:48:08       9 阅读
  7. 【Python】常见的生成随机数的方法

    2024-06-06 13:48:08       11 阅读
  8. 关于Apache Tomcat请求走私漏洞(CVE-2023-46589)

    2024-06-06 13:48:08       9 阅读
  9. Ubuntu系统设置Redis与MySQL登录密码

    2024-06-06 13:48:08       9 阅读