Qt 循环中加入QCoreApplication::processEvents退出后台运行

Qt 循环中加入QCoreApplication::processEvents退出后台运行,第1张

你应该使用QApplication::processEvents(),这个是处理GUI程序的。而QCoreApplication::processEvents()是处理控制台程序的,虽然我没看源码,但你关闭窗体时的closeEvent是widget特有的,而控制台不会产生这个事件,所以你用QCoreApplication::processEvents()根据就不会处理顶层窗体的closeEvent,也就是不会退出程序,而窗体自身对closeEvent的处理只是hide隐藏窗体而已,也就造成你的后台运行现象。

进程关闭外部程序:

QString KillStr = "taskkill /f /im main.exe"

QProcess *Process = new QProcess(this)

Process->start(KillStr)


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/11230876.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-14
下一篇 2023-05-14

发表评论

登录后才能评论

评论列表(0条)

保存