当前位置: 首页 > news >正文

模态与非模态的对话框

本文学习自:

《Qt Creato快速入门》

#include "widget.h"
#include <QApplication>int main(int argc, char *argv[])
{QApplication a(argc, argv);Widget w;w.show();return a.exec();
}

1.

#include "widget.h"
#include "ui_widget.h"
#include <QDialog>
Widget::Widget(QWidget *parent) :QWidget(parent),ui(new Ui::Widget)
{ui->setupUi(this);QDialog dialog(this);dialog.resize(550,550);dialog.setStyleSheet("background-color:green;");dialog.show();
}Widget::~Widget()
{delete ui;
}

这样写dialog会一闪而逝的。

因为dialog的生命周期很短,构造函数完成后,它就析构了。

2.

#include "widget.h"
#include "ui_widget.h"
#include <QDialog>
Widget::Widget(QWidget *parent) :QWidget(parent),ui(new Ui::Widget)
{ui->setupUi(this);QDialog *dialog = new QDialog(this);dialog->resize(550,550);dialog->setStyleSheet("background-color:green;");dialog->show();
}

写成这样的话,会显示dialog,但不是模态的。

什么是模态对话框:

在关闭它之前,不能再与同一个应用程序的其他窗口进行交互。

3.

#include "widget.h"
#include "ui_widget.h"
#include <QDialog>
Widget::Widget(QWidget *parent) :QWidget(parent),ui(new Ui::Widget)
{ui->setupUi(this);QDialog dialog(this);dialog.resize(550,550);dialog.setStyleSheet("background-color:green;");dialog.exec();
}Widget::~Widget()
{delete ui;
}

写成这样的话,dialog是模态的。

而且,因为使用了exec()方法,当dialog关闭后,程序才继续向下执行。

exec():当对话框关闭时,函数返回值,程序向下进行。

show():调用完函数后,立即将控制权交给调用者,程序继续向下进行。

4.使用show()也可以建立模态对话框,需要在前面使用setModel()函数。

#include "widget.h"
#include "ui_widget.h"
#include <QDialog>
Widget::Widget(QWidget *parent) :QWidget(parent),ui(new Ui::Widget)
{ui->setupUi(this);QDialog dialog(this);dialog.resize(550,550);dialog.setStyleSheet("background-color:green;");dialog.setModal(true);dialog.show();
}Widget::~Widget()
{delete ui;
}

这样写的话,dialog是模态窗口,但还是一闪而逝。

#include "widget.h"
#include "ui_widget.h"
#include <QDialog>
Widget::Widget(QWidget *parent) :QWidget(parent),ui(new Ui::Widget)
{ui->setupUi(this);QDialog *dialog = new QDialog(this);dialog->resize(550,550);dialog->setModal(true);dialog->setStyleSheet("background-color:green;");dialog->show();
}Widget::~Widget()
{delete ui;
}

这样写的话,dialog是模态窗口,先显示dialog,关闭后,才显示widget。

5.

setWindowModel:

参数:设置模态对话框要阻塞的窗口类型

Qt::NonModel:不阻塞任何窗口

Qt::WindowModel:阻塞它的父窗口和所有祖先窗口和它们的子窗口

Qt::ApplicationModel(阻塞整个应用程序的所有窗口)

默认是Qt::ApplicationModel

---

学海无涯,加油! 

相关文章:

模态与非模态的对话框

本文学习自&#xff1a; 《Qt Creato快速入门》 #include "widget.h" #include <QApplication>int main(int argc, char *argv[]) {QApplication a(argc, argv);Widget w;w.show();return a.exec(); }1. #include "widget.h" #include "ui_w…...

C语言练习

题目&#xff1a; 1.运用switch选择语句&#xff0c;编写一段C语言&#xff0c;请根据输入的数字&#xff0c;显示相应的星期日&#xff0c;如果数字所对应的星期日并不存在请显示“抱歉&#xff0c;您输入的内容并不存在。” 分析&#xff1a;1.在本题中&#xff0c;要运用到…...

CyberRt实践之Hello Apollo(Apollo 9.0版本)

apollo9.0环境安装参考官方网站 apollo.baidu.com/community/Apollo-Homepage-Document?docBYFxAcGcC4HpYIbgPYBtXIHQCMEEsATAV0wGNkBbWA5UyRFdZWVBEAU0hFgoIH0adPgCY%2BADwCiAVnEAhAILiAnABZxEgOzK1Y%2BQA51M3ROUnJBsbK2WZoyUdkBhcXoAMhlwDFlARnUXZdzE9AGY%2BbFINADYpUhCEFW…...

【JavaScript】LeetCode:61-65

文章目录 61 课程表62 实现Trie&#xff08;前缀树&#xff09;63 全排列64 子集65 电话号码的字母组合 61 课程表 Map BFS拓扑排序&#xff1a;将有向无环图转为线性顺序。遍历prerequisites&#xff1a;1. 数组记录每个节点的入度&#xff0c;2. 哈希表记录依赖关系。n 6&a…...

【SpringAI】(一)从实际场景入门大模型——适合Java宝宝的大模型应用开发

一、简单场景介绍 假设你需要为一个商城项目接入一个基于SpringAI的智能客服系统&#xff0c;现在我们来基本模拟一下&#xff1a; 当我通过系统提问&#xff0c;大模型会针对我的问题进行回答。 当我们通过程序提问时&#xff0c;SpringAI会将我们的提问封装成Prompts&#x…...

植物大战僵尸杂交版

最新版植物大战僵尸杂交版 最近本款游戏火爆 下载资源如下&#xff1a; win版本&#xff1a;2.3.7 链接&#xff1a;下载地址 提取码&#xff1a;9N3P Mac&#xff08;苹果版本&#xff09;&#xff1a;2.0.0 链接&#xff1a;下载地址 提取码&#xff1a;Bjaa 介绍&#xff…...

live2d 实时虚拟数字人形象页面显示,对接大模型

live2dSpeek 测试不用gpu可以正常运行 https://github.com/lyz1810/live2dSpeek 运行的话还需要额外下载https://github.com/lyz1810/edge-tts支持语音 ## 运行live2dSpeek >npm install -g http-server >http-server . ## 运行edge-tts python edge-tts.py...

SpringCloud-持久层框架MyBatis Plus的使用与原理详解

在现代微服务架构中&#xff0c;SpringCloud 是一个非常流行的解决方案。而在数据库操作层面&#xff0c;MyBatis Plus 作为 MyBatis 的增强工具&#xff0c;能够简化开发&#xff0c;提升效率&#xff0c;特别是在开发企业级应用和分布式系统时尤为有用。本文将详细介绍 MyBat…...

Servlet的HttpServletRequest

HttpServletRequest是Java Servlet规范中定义的一个接口&#xff0c;它表示客户端向服务器发送的请求&#xff0c;并提供了与HTTP请求相关的方法和属性。 getSession方法()&#xff1a;用于获取与当前请求相关联的HttpSession对象。 setAttribute(String name, Object value)…...

U9销售订单不能带出最新价格出来

业务员突然说系统带不出来销售价格。了解之后&#xff0c;不是带不出来价格&#xff0c;是做了价格调整之后&#xff0c;最新价格没有匹配出来&#xff0c;带出来的价格是历史价格。检查&#xff0c;分析相关的单据&#xff0c;生效日期&#xff0c;失效日期&#xff0c;审核状…...

Jmeter接口测试企业级项目实战day1

1.接口测试 接口测试工具&#xff1a; JMeter&#xff1a;支持多种接口类型&#xff0c;还能测试性能&#xff0c;开源&#xff0c;开源进行二次扩展。 Postman&#xff1a;简单&#xff0c;方便&#xff0c;局限性比较大&#xff0c;适合开发临时行调试 APIFox等&#xff1a;新…...

接口测试面试题含答案

1、解释一下正向和逆向测试。 正向测试&#xff1a;针对接口设计预期的功能和行为&#xff0c;验证接口是否按照预期工作。 逆向测试&#xff1a;针对错误输入、不合理的条件或非预期的使用方式&#xff0c;验证接口是否能够适当地处理这些情况并提供合理的错误处理。 2、什…...

横板营业执照提取生成

前言 有一段时间没发博客了&#xff0c;今天分享下几个月前做的营业执照提取器UI 预览图 框架 b-ui很好用&#xff0c;这个前端框架作者 发布的插件我都会用&#xff0c;鱿鱼助手也是基于这个框架开发的 代码 html <template><view><template><view…...

webm格式怎么转换成mp4?这5种转换方法很好用

现如今&#xff0c;视频格式繁多&#xff0c;而webm作为一种由谷歌开发的视频格式&#xff0c;以其高画质和低带宽需求著称。然而&#xff0c;并非所有设备和播放器都完美支持webm格式&#xff0c;这时将其转换为兼容性更强的MP4格式就显得尤为重要。下面给大家分享5种非常简单…...

C/C++语言基础--C++异常看这一篇就够了

本专栏目的 更新C/C的基础语法&#xff0c;包括C的一些新特性 前言 通过前面几节课&#xff0c;我们学习了抽象、封装、继承、多态等相关的概念&#xff0c;接下来我们将讲解异常&#xff0c;异常是专门处理错误的&#xff1b;这一次加了不少图标&#xff0c;希望大家喜欢;C语…...

DFT ATPG中常见影响coverage的因素有哪些?

# DFT ATPG中常见影响Coverage的因素 ## 一、电路结构复杂性 1. **逻辑层次深度** - **原理** - 当电路的逻辑层次很深时,信号在传播过程中会经过多个逻辑门的处理。这使得测试向量难以准确地控制和观察内部节点的状态。例如,在一个具有多层嵌套逻辑的电路中,如一个…...

Python机器学习数据清洗到特征工程策略

Python机器学习数据清洗到特征工程策略 目录 ✨ 数据清洗&#xff1a;处理缺失值与异常值的策略&#x1f504; 特征选择&#xff1a;筛选与数据目标高度相关的特征&#x1f6e0; 特征工程&#xff1a;数据转换与生成新特征的多样化方法&#x1f4ca; 类别型变量的数值化&…...

多线程-进阶(2)CountDownLatchConcurrentHashMapSemaphore

目的; JUC(java.util.concurrent) 的常⻅类 接着上一节课到 1.信号量 Semaphore 信号量, ⽤来表⽰ "可⽤资源的个数". 本质上就是⼀个计数器。 理解信号量 可以把信号量想象成是停⻋场的展⽰牌: 当前有⻋位 100 个. 表⽰有 100 个可⽤资源. 当有⻋开进去的时候,…...

密码管理器KeePass的安装及使用

文章目录 软件下载安装汉化新建数据库创建\移动\修改 群组添加/修改/删除/移动 记录展示、搜索、锁定单独使用keepass生成密码的功能AES-256的密钥长度为256位&#xff0c;为啥可以设置超过32个字符的密钥&#xff1f; 软件下载 安装 分别解压&#xff1a;KeePass-2.53.1.zip&…...

星海智算:【萤火遛AI-Stable-Diffusion】无需部署一键启动

部署流程 1、注册算力云平台&#xff1a;星海智算 https://gpu.spacehpc.com/ 2、创建实例&#xff0c;镜像请依次点击&#xff1a;“镜像市场”->“更换”->“AI绘画”->“萤火遛AI-Stable Diffusion”。 程序首次启动可能需要几分钟&#xff0c;待实例显示“运行…...

AI专著写作快车道:特色工具大集合,助力科研成果出版

学术专著写作困境与AI工具助力 学术专著的写作并不只是简单的“写出来”&#xff0c;更在于能否顺利“出版、得到认可”。在当前的出版市场&#xff0c;学术专著的受众本就相对有限&#xff0c;因此出版社对学术价值和作者的影响力要求非常高。许多作者虽然完成了初稿&#xf…...

LeetCode 11. Container With Most Water 题解

LeetCode 11. Container With Most Water 题解 题目描述 给你 n 个非负整数 a1&#xff0c;a2&#xff0c;...&#xff0c;an&#xff0c;每个数代表坐标中的一个点 (i, ai) 。在坐标内画 n 条垂直线&#xff0c;垂直线 i 的两个端点分别为 (i, ai) 和 (i, 0) 。找出其中的两条…...

保姆级教程:在Windows系统本地部署Qwen3-14B-Int4-AWQ对话模型

保姆级教程&#xff1a;在Windows系统本地部署Qwen3-14B-Int4-AWQ对话模型 1. 前言&#xff1a;为什么选择本地部署&#xff1f; 在个人电脑上运行大语言模型听起来可能有些遥不可及&#xff0c;但随着模型量化技术的进步&#xff0c;现在即使是消费级显卡也能流畅运行14B参数…...

Windows记事本CVE-2026-20841漏洞分析:从命令注入根因、全链路攻击链到企业级纵深防御的全维度深度复盘

在Windows系统的生态里&#xff0c;从来没有一款工具能像记事本一样&#xff0c;拥有长达40年的“绝对安全”共识。 从1985年Windows 1.0首次预装&#xff0c;到如今Windows 11的全版本覆盖&#xff0c;这个仅数百KB的纯文本编辑器&#xff0c;始终是全球用户记录备忘、清理格…...

用Python的igraph和leidenalg搞定知识图谱布局:一个科研领域的可视化实战

科研知识图谱实战&#xff1a;用PythonLeiden算法揭示学科交叉规律 当你在文献海洋中寻找研究方向时&#xff0c;是否曾被复杂的学科交叉关系困扰&#xff1f;传统的关键词共现分析已经不能满足现代科研的需求。本文将带你用Python的igraph和leidenalg构建一个能自动识别学科社…...

2026职业红利:AI智能体运营岗位培训如何助你实现高薪跨越?

导读&#xff1a; 2026年&#xff0c;职场竞争的底层逻辑已悄然改变。当传统运营还在为写一段文案、剪一个视频熬夜时&#xff0c;掌握了 AI 智能体技术的“新运营人”已经通过自动化工作流&#xff0c;实现了 10 倍速的产出。目前&#xff0c;市场对AI智能体运营经理、AI内容策…...

汽车智能制造如何落地?从“黑灯工厂”看AI赋能的关键路径

一、当工厂学会在黑暗中自行运转偌大的汽车生产车间里&#xff0c;灯光熄灭&#xff0c;只有AGV小车穿梭的微光和机械臂有节奏的运作声。没有工人的手电筒&#xff0c;也没有巡检的脚步&#xff0c;一切生产、检测、调度都在黑灯状态下有条不紊地进行。这并非科幻电影&#xff…...

Neeshck-Z-lmage_LYX_v2多场景落地:LoRA动态加载赋能数字人直播背景实时生成系统

Neeshck-Z-lmage_LYX_v2多场景落地&#xff1a;LoRA动态加载赋能数字人直播背景实时生成系统 1. 项目简介&#xff1a;一个专为本地绘画优化的轻量级工具 如果你对AI绘画感兴趣&#xff0c;特别是想体验国产的Z-Image文生图模型&#xff0c;但又被复杂的部署流程、繁琐的参数…...

开源工具SMUDebugTool:系统优化与性能调优的终极解决方案

开源工具SMUDebugTool&#xff1a;系统优化与性能调优的终极解决方案 【免费下载链接】SMUDebugTool A dedicated tool to help write/read various parameters of Ryzen-based systems, such as manual overclock, SMU, PCI, CPUID, MSR and Power Table. 项目地址: https:/…...

别再死记硬背了!用Python可视化理解L-smooth函数与梯度Lipschitz连续

别再死记硬背了&#xff01;用Python可视化理解L-smooth函数与梯度Lipschitz连续 第一次接触L-smooth这个概念时&#xff0c;我盯着数学公式看了整整一个下午——梯度Lipschitz连续、二次上界、等价性证明&#xff0c;每个词都认识&#xff0c;连起来却像天书。直到我用Python画…...