QT new模态对话框

2023-11-19

1. 如果父窗口是new出的,则子窗口如果用堆栈的方式(Dlg dlg;)创建,则会出现QWSLock::up/down(): Invalid argument错误,

这实际上QT4.8的一个Bug,如果不想重新编译Qt的话,可以采用以下方式临时避免一下。

2. 正确的方式是,子窗口也要用new的方式创建,new出的窗口设置为模态需要以下四个步骤:

(1)Dlg *dlg = new Dlg(this);//this必须传入,否则该子窗口无父窗口,也就无法造成模态

(2)dlg->setWindowFlags(Qt::Dialog | Qt::WindowCloseButtonHint);//Qt::Dialog是必须的

(3)dlg->setWindowModality(Qt::WindowModal);//Qt::WindowModal是必须的

(4)//dlg->setAttribute(Qt::WA_DeleteOnClose)//不能设置该属性,经测试证明,Qt的QWidget在new的时候只要指定了父窗口,则在父窗口delete的时候它会自动执行析构,不必显式调用delete。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

QT new模态对话框 的相关文章

  • 完全彻底卸载QT Creator

    问题 如何从 Linux 机器上卸载 QT Creator 我的 Debian Jessie 机器上的安装已损坏 我尝试过重新安装 修复等 但没有成功 建议我完全卸载 获取最新版本并重新安装 问题是我不确定如何执行此操作 每次我尝试时 QT
  • QMainWindow 上的 Qt 布局

    我设计了一个QMainWindow with QtCreator s设计师 它由默认的中央小部件 aQWidget 其中包含一个QVBoxLayout以及其中的所有其他小部件 现在我想要的一切就是QVBoxLayout自动占据整个中央小部件
  • 如何在Qt 5中的paintEvent上使用mouseMoveEvent?

    我是 Qt 和 c 的新手 所以我遇到了一些困难 我正在尝试创建一个小部件 它可以获取 mouseMoveEvent 位置并在鼠标位置的像素图上绘制椭圆 下面你可以看到代码 include myimage h include
  • QML 中可重用的字体属性[重复]

    这个问题在这里已经有答案了 在 QML 中 我希望能够定义一组字体属性以进行简单的语义重用 例如 代替 Text text This is a header font family Encode Sans weight Font Black
  • 连接到 QNetworkReply::error 信号

    我正在使用 Qt5 的新连接语法 QNetworkReply 有一个名为error http qt project org doc qt 5 0 qtnetwork qnetworkreply html error 2还有一个函数叫做err
  • 使用 QGraphicsScene 实现流畅的动画

    我希望我的问题并不总是同样的问题 我有一个 QGraphicsScene 它的项目是一些 QGraphicsPixmap 我用一个计时器来移动它们 每秒 SetX 10 我设置 10是因为窗口大100 使用这个解决方案我的动画不流畅 我想我
  • 通过单击内部小部件而不是标题栏来移动窗口

    在 Windows 中 当我创建 QMainWindow 时 我可以通过单击标题栏并拖动它来在屏幕上移动它 在我的应用程序中 我使用隐藏了标题栏setWindowFlags Qt CustomizeWindowHint 我正在尝试使用小部件
  • 为什么 QT 设计器重新调整大小或不允许我缩小或展开小部件或按钮?

    很多时候 在使用 QT 设计器时 我发现自己需要通过缩小或扩展来调整事物的大小 每当我尝试这样做时 程序都不允许我这样做 而只是恢复到将对象放置在窗口中时给我的原始默认大小 无论我的布局如何 为什么要这样做 是否有可能改变这一点 以便我可以
  • 在 Qt 中自动调整标签文本大小 - 奇怪的行为

    在 Qt 中 我有一个复合小部件 它由排列在 QBoxLayouts 内的多个 QLabels 组成 当小部件调整大小时 我希望标签文本缩放以填充标签区域 并且我已经在 resizeEvent 中实现了文本大小的调整 这可行 但似乎发生了某
  • 在 Qt 中,许多插槽连接到同一信号,它们在发出信号时是否按顺序调用?

    In the Qt文件说 如果多个插槽连接到一个信号 则这些插槽将 按照它们连接的顺序一个接一个地执行 当信号发出时 但在connect 功能 设置Qt ConnectionType输入为Qt QueuedConnection意思是 当控制
  • 使 QLabel 的像素图透明

    我有一个带有 QLabel 和像素图的主窗口 我想让它透明 或不那么不透明 我正在使用下面的代码 ui gt label gt setAttribute Qt WA TranslucentBackground ui gt label gt
  • 使用 QNetworkAccessManager 的 Qt 控制台应用程序

    我正在尝试写一个Qt调用网络服务的应用程序 这是一个控制台应用程序 url 将作为命令行参数传入 我搜索了例如http程序在Qt并找到这个链接 http qt project org doc qt 5 qnetworkaccessmanag
  • Qt 相当于 .NET 数据绑定吗?

    Qt 中是否有相当于 NET 数据绑定的功能 我想使用引用数据库中特定实体的 QString 填充一些组合框和其他小部件 但是 如果我可以将数据绑定到这些字符串 而不是基于新的组合框选择再次查询数据库 或者基于构建我自己的将使用 QStri
  • CMake AUTOMOC,文件位于不同文件夹中

    我有一个简单的 CMake 项目 proj project folder a h a cpp CMakeLists txt CMakeLists txt cmake minimum required VERSION 3 2 set CMAK
  • 如何为 Windows 安装开源 Qt 库 5 二进制版本

    这个问题具体是关于Qt libraries 5 0 0 for Windows VS 2010 406 MB at http qt project org downloads http qt project org downloads 但我
  • 使用 QWT 构建时出错

    我收到一个错误 undefined reference to QwtPlot QwtPlot QWidget 当我尝试构建我的项目时 即使设置中一切看起来都很好 在我的 CmakeLists txt 中我有 include director
  • QT:模块“QtWebView”未安装

    我的操作系统是win10 QT版本是Qt5 7 mingw53 32 目标操作系统是win10 当我使用qmlscene执行qml文件时 发生了一些错误 qrc qml 3 模块 QtWebView 未安装 我的 qml 文件如下 impo
  • QThread - 使用槽 quit() 退出线程

    我想在线程完成运行时通知对象 但是 我无法让线程正确退出 我有以下代码 处理器 cpp thread new QThread tw new ThreadWorker connect tw SIGNAL updateStatus QStrin
  • 使用 qbs 构建 qt 应用程序

    我想知道在 Linux 上使用 qbs 编译 构建和创建 Android Qt 应用程序的步骤 我拥有所有必要的工具 目前我可以使用 qmake 创建 apk Qbs 目前不支持构建 Qt Android 应用程序 Qbs v1 4 中引入
  • Qt 多重继承和信号

    由于 QObject 我在 QT 中遇到了有关多重继承的问题 我知道很多人也有同样的问题 但我不知道该如何解决 class NavigatableItem public QObject Q OBJECT signals void desel

随机推荐

  • vue吸顶导航栏_vue2组件系列第四十二节:NavBar 导航栏

    NavBar就是程序顶部的内容 相当于网站里的面包屑的作用 准备工作 创建一个页面 NavBar vue 在router js里配置NavBar页面的路由 path navbar name navbar component gt impor
  • 左右手坐标系区别和联系

    本文是分析 所谓的右手坐标系转换为左手坐标系需要的 z轴取反 x轴取反 或者改变摄像机位置 渲染绕序改变 其中的进一步的原因 参考文章 https msdn microsoft com en us library bb204853 28VS
  • 真伪定时器

    首先观察一下下面两组代码区别在哪里 第一组代码 setInterval gt 1 5s 的同步逻辑 1000 第二组代码 function fn setTimeout gt 1 5s 的同步逻辑 fn 1000 fn 两组代码都有定时功能
  • Java实体类详解及使用方法

    在Java编程中 实体类 Entity Class 是一种经常使用的类类型 实体类用于表示真实世界中的对象 通常与数据库中的表格相对应 本文将详细介绍Java实体类的概念 特点以及使用方法 什么是实体类 实体类是指用于表示和存储真实世界中的
  • 【论文精读】A view-free image stitching network based on global homography-基于全局单应的无视图图像拼接网络

    论文链接地址 代码链接地址 关于本文的代码 我已经调试过了 在调试过程中遇到的错误 我也做了一些总结 有需要的可以参考这篇博文 A view free image stitching network based on global homo
  • Spring Boot集成控制反转

    Most of the time dependency injection is the first thing that comes to mind whenever the concept of inversion of control
  • idea 2021.1安装 与 常用配置

    前置说明 该文档是基于idea 2021 1版本编写的 一 下载安装 官方下载地址 https www jetbrains com idea download other html 二 常用的设置 显示工具栏 设置tab选项卡换行 设置代码
  • Unity 打开时一直busy怎么办

    查看网络连接 比如360流量球或者任务管理器内的网络 如果能看到unity在下载东西或网络占用高 则表明可能是unity在下载在线资源 查看 工程目录 Package manifest json 文件是否存在国外地址 可能是由于网络原因连不
  • RabbitMq——发布确认高级和消息回退

    发布确认高级 消息在传递过程中 我们需要确定消息状态信息 开启发布确认高级模式 消息传递结束后会返回传递结果信息 若发送失败的消息 该消息会被存入缓存中 定时任务发送失败消息 交换机收到消息后 缓存会删除该信息 如果只开启发布确认模式的话
  • java多线程的意义

    https www zhihu com question 332042250
  • 前缀和与差分(分析与模板)

    前缀和 处理数组公式 s i s i 1 num i 输出区间和公式 s r s l 1 模板 include
  • kMeans算法(K均值聚类算法)

    机器学习中有两类的大问题 一个是分类 一个是聚类 分类是根据一些给定的已知类别标号的样本 训练某种学习机器 使它能够对未知类别的样本进行分类 这属于supervised learning 监督学习 而聚类指事先并不知道任何样本的类别标号 希
  • 【100%通过率 】【华为OD机试真题 c++ 】最大数字【 2023 Q1 A卷

    华为OD机试 题目列表 2023Q1 点这里 2023华为OD机试 刷题指南 点这里 题目描述 给定一个由纯数字组成以字符串表示的数值 现要求字符串中的每个数字最多只能出现2次 超过的需要进行删除 删除某个重复的数字后 其它数字相对位置保持
  • Android 模拟器 Genymotion 安装配置与 ARM 支持

    简介 Genymotion是一款基于x86架构的Android模拟器 由于系统启动速度 应用运行速度远远快于Android SDK自带模拟器而受到广泛应用 优缺点 优点 1 模拟器启动速度快 比AVD快很多 2 应用运行速度快 3 跨平台
  • Python面向对象类继承中发生的私有属性访问错误问题

    按照Python100days项目中的该方法来访问私有属性 可正常访问到 class Test def init self foo self foo foo def bar self print self foo print bar def
  • 【Pytorch】常用函数功能介绍和注意事项

    持续更新中 数据预处理 Variable from torch autograd import Variable 作用 自动微分变量 用于构建计算图 网络层定义 torch nn BatchNorm2d 设尺寸为N C H W 其中N代表b
  • 微信小程序实现点击左侧导航栏自动定位到对应的位置

    我要实现的效果是点击左侧导航栏 右侧区域会自动滚动到相应的位置显示 其中当选择品牌的时候 右侧是有索引栏的 效果图如下 刚开始的时候我是用微信小程序自带的组件scroll view是实现点击左侧导航栏的跳转功能 其中scroll into
  • C++ STL- 常用容器deque

    1 1 deque容器基本概念 功能 双端数组 可以对头端进行插入删除操作 deque与vector区别 vector对于头部的插入删除效率低 数据量越大 效率越低 deque相对而言 对头部的插入删除速度会比vector快 vector访
  • Xilinx 7系列芯片选型手册的资源量怎么看

    推荐阅读AMD官方文档 该文档介绍了各种资源的具体含义 链接 7 Series FPGAs Configurable Logic Block User Guide UG474 以XC7A35T为例 Logic Cells 逻辑单元 对于7系
  • QT new模态对话框

    1 如果父窗口是new出的 则子窗口如果用堆栈的方式 Dlg dlg 创建 则会出现QWSLock up down Invalid argument错误 这实际上QT4 8的一个Bug 如果不想重新编译Qt的话 可以采用以下方式临时避免一下