Qt设置不在win任务栏显示将无法正常关闭程序

money939 2013-02-07 10:48:22
1、windows下
2、用Qt Creator

%%:使用widget.setWindowFlags() 参数使用:Qt::Tool、 Qt::SubWindow 、 Qt::Popup
以上三个参数任意选用一个均可以实现Qt程序在运行时,windows的任务栏上不显示该Qt程序。

##:我对widget设置去掉了标题栏,于是为了关闭程序我重写了void mousePressEvent(QMouseEvent *event)实现了鼠标右击时关闭该窗体。调用的是close()函数


如果我只是单独实现##没有实现%%,##是可以正常使用的。但是我加上%%的功能后,用Qt Creator运行了,
再对其右击时发现Qt creator的输出框并没有显示该应用程序已经关闭!!!但是屏幕上的窗体确实是消失了!!!此时我尝试去关闭Qt Ctreator会有提示说:是否要强制关闭(我刚刚运行的程序)。这就更加说明了我的程序没有正常退出!!!

如何在实现%%and##的条件下让程序可以正常关闭~
谢谢大家
...全文
1944 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
z55716368 2015-05-11
  • 打赏
  • 举报
回复
请问楼主你最后是怎么解决的啊 我现在也是和你一样的问题 搞不来。
夏逸 2013-03-29
  • 打赏
  • 举报
回复
建议从内部发出终止信号,来结束整个程序。
money939 2013-02-08
  • 打赏
  • 举报
回复
对了,你说的源代码是什么意思?
money939 2013-02-08
  • 打赏
  • 举报
回复
用exit()确实解决了问题!非常感谢 文档里说用quitOnLastWindowClosed设成false可以关闭该特性,可是这个函数我的窗体widget里根本没有这个函数额…… 百度到: Application.Exit 方法 通知所有消息泵必须终止,并且在处理了消息以后关闭所有应用程序窗口。 Form.Close 方法 关闭窗体。 如果该窗体是应用程序的主启动窗体,则調用窗体的Close()方法,跟調用Application.Exit的效果差不多。 如果该窗体非主启动窗体,则只是关闭该窗体而不关闭整个应用程序。 大概明白了,非常感谢版主,小弟半玩半学Qt十来天,对信号还不是很清楚……
dext 2013-02-07
  • 打赏
  • 举报
回复
找了找源代码,发现原本Qt 就有一个信号解决这个问题。。。 看来对 Qt Document 还有待进一步学习。 void QApplication::lastWindowClosed () [signal] This signal is emitted from QApplication::exec() when the last visible primary window (i.e. window with no parent) with the Qt::WA_QuitOnClose attribute set is closed. By default, this attribute is set for all widgets except transient windows such as splash screens, tool windows, and popup menus QApplication implicitly quits when this signal is emitted. This feature can be turned off by setting quitOnLastWindowClosed to false. See also QWidget::close().
dext 2013-02-07
  • 打赏
  • 举报
回复
qApp->exit();
dext 2013-02-07
  • 打赏
  • 举报
回复
没有试验,可能会有以这样的问题。但不是Qt的问题。默认情况下,Qt会在最后一个窗口关闭后退出主程序。类似于关闭主窗口就退出。但是当你把窗口设置成 上边的情况时,可能是你的窗口失去了“主窗口”的特性,而导致程序不能正常关闭。你也可以自己查看Qt的源代码确认此事。
内容概要:本文针对高新能源渗透率电网中构网型(GFM-VSG)与跟网型(GFL-PQ)并联变流器的异构控制体系及其频率支撑能力展开深入研究,重点通过Simulink仿真实现对混合并网系统的动态特性进行建模与分析。研究系统梳理了GFM与GFL变流器在控制原理上的本质差异,揭示了其在多时间尺度下的交互机制,并探讨了在强弱电网不同适配场景下的协同控制逻辑。通过构建包含虚拟同步机(VSG)和恒功率控制(PQ)策略的仿真模型,全面分析系统在电网扰动下的频率响应特性、暂态稳定性及扰动抑制能力。研究对比了不同类型变流器在频率调节、功率分配和系统恢复方面的性能表现,深入剖析异构系统中频率支撑的协作机制与优化路径,为高比例新能源电网的安全稳定运行提供了理论依据与技术支撑。; 适合人群:具备电力电子、新能源并网、自动控制或电力系统相关专业知识背景,从事科研、工程应用或技术开发的研发人员、高校研究生及高年级本科生。; 使用场景及目标:① 研究GFM与GFL变流器在混合并网系统中的协同控制策略与交互机理;② 分析高渗透率新能源电网面临的频率稳定问题及变流器的频率支撑能力;③ 利用Simulink搭建GFM-GFL混合并网系统仿真模型,开展动态性能验证、控制算法设计与优化。; 阅读建议:建议结合文中提到的Simulink仿真模型与博士论文复现案例进行实践操作,重点关注不同工况下的系统频率响应曲线、功率动态曲线与控制参数敏感性分析,深入理解异构控制体系的设计逻辑、多时间尺度交互特性及优化潜力。

21,503

社区成员

发帖
与我相关
我的任务
社区描述
Qt 是一个跨平台应用程序框架。通过使用 Qt,您可以一次性开发应用程序和用户界面,然后将其部署到多个桌面和嵌入式操作系统,而无需重复编写源代码。
社区管理员
  • Qt
  • 亭台六七座
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧