首页 > 其他分享 >QT主窗口关闭,同时关闭打开的子窗体

QT主窗口关闭,同时关闭打开的子窗体

时间:2023-02-18 11:45:37浏览次数:42  
标签:QT WA QuitOnClose 窗体 关闭 Qt

问题描述:QT主窗口关闭,但打开的子窗体未关闭。

解决方式:在子窗体的构造函数中,设置如下属性:

this->setAttribute(Qt::WA_QuitOnClose, false);

原理解释:我们可以发现,在主窗体关闭但子窗体未关闭时,程序依然在运行未退出,而如果主窗体关闭,程序退出,那么其他子窗体也能自动关闭。

Qt::WA_QuitOnClose属性的意思是指在最后一个窗体关闭时退出程序,是通过发送lastWindowClosed信号,当发送该信号时,程序会执行quit函数,具体可参考Qt Assistant中的说明。

而目前是当我们打开子窗体时,该属性默认设置为true,也就是说即使主窗体关闭了,程序也不会退出,需要等到最后一个窗口关闭之后才退出。那么就需要将除主窗体外的窗体的Qt::WA_QuitOnClose属性设置为false,这样当主窗体关闭时就会发送lastWindowClosed信号退出主程序。

标签:QT,WA,QuitOnClose,窗体,关闭,Qt
From: https://www.cnblogs.com/zzzsj/p/17132235.html

相关文章

  • qt的属性,动态属性,与样式表。
    首先参考两篇博客:Qt中的属性系统:https://blog.csdn.net/libaineu2004/article/details/88106976https://blog.csdn.net/feiyangqingyun/article/details/121177993总结:......
  • QQ钱包在哪关闭
    qq作为一款在线聊天工具,还能为我们提供便捷支付的服务,开通钱包功能就可以对各种业务进行线上支付了,如果不想继续用qq钱包要怎么关闭呢?赶快来一起看看吧!QQ钱包注销方法......
  • QT——setMouseTracking函数
    (一)介绍首先介绍一个变量boolmouseTracking,这个变量保存值表示窗口部件跟踪鼠标是否生效。可以通过函数setMouseTracking()来设置其值,可以通过函数hasMouseTracking()来获......
  • Halcon与Qt之间的数据类型转换
    【HTuple与QString】(QString)hv_result[0].S();//HTuple转QStringhv_ImagePath=modelImagePath.toStdString().c_str();//QString转HTuple【HTuple与int】hv......
  • Qt Embedded之一:简介与平台插件介绍
    常见的嵌入式Linux图形界面有Qt/Embedded、DirectFB、MicroWindows/NanoX、MiniGUI和OpenGUI等,每个GUI都有各自不同特点和应用场合,在应用编程上也各不相同。而对于......
  • Qt Embedded之二:Input 输入系统
    相对于没有视窗系统,鼠标、键盘、触摸板输入直接从evdev读取或者使用第三方的库实现比如libinput、tslib。这需要/dev/input/event*可以被用户读取。Eglfs和Linuxfb内部......
  • win64环境下监听键盘操作并发送MQTT消息
    1.MQTT服务安装下载EMQX做MQTT代理服务器https://www.emqx.cn/downloads/broker/v4.2.7/emqx-centos7-4.2.7-x86_64.zip解压安装即可启动MQTT服务器在emqx/bin目录下......
  • 解决Qt运行程序后,可用串口变化问题
    1.Qt解决运行程序后,可用串口变化问题2.设置定时器,定时刷新可用串口//定义全局变量QSerialPort*serialPort;QTimer*timer;QStringListportStringList;QStringcurrentCOM......
  • 切换窗体或消息控制窗体的延时问题
    应用场景如:ShowWindow+SetForegroundWindow,用来切换窗体,有时切换失败对其他窗体SendMessageWM_KEYDOWN或其他消息控制动作,有时逻辑异常问题原因:其他窗......
  • Qt第一个Qt程序
    目录Qt第一个窗口程序1.创建项目2.创建按钮Qt第一个窗口程序1.创建项目2.创建按钮修改mainwindow.cpp#include"mainwindow.h"#include"ui_mainwindow.h"#......