问题如下:如果应用程序在不活动的情况下关闭,它会正确退出。但是,如果它正在执行某些操作(例如等待while循环),则主窗口将关闭,但程序将继续在后台运行,通过打开任务管理器可以确认这一点。
我花了一整天的时间搜索问题并实施可能的修复措施,但都没有成功。似乎quit()函数根本没有起作用。以下是我尝试过的一些方法:
使用app.connect(&app, SIGNAL(lastWindowClosed()), &app, SLOT(quit()))。我知道信号被触发了,因为我尝试将&app,SLOT(quit())更改为qApp,SLOT(aboutQt()),aboutQt窗口短暂地弹出。
在从主窗口按钮运行的函数开头包括qApp->quit()。应用程序确实运行到了那一行,但没有任何效果。
使用processEvents()确保GUI正在更新。
在main.cpp中包括诸如mainWindow.setAttribute(Qt::WA_QuitOnClose)之类的语句。
我只想让应用程序在主窗口关闭时完全退出。
如果有区别的话,我正在使用qextserialport库。
我花了一整天的时间搜索问题并实施可能的修复措施,但都没有成功。似乎quit()函数根本没有起作用。以下是我尝试过的一些方法:
使用app.connect(&app, SIGNAL(lastWindowClosed()), &app, SLOT(quit()))。我知道信号被触发了,因为我尝试将&app,SLOT(quit())更改为qApp,SLOT(aboutQt()),aboutQt窗口短暂地弹出。
在从主窗口按钮运行的函数开头包括qApp->quit()。应用程序确实运行到了那一行,但没有任何效果。
使用processEvents()确保GUI正在更新。
在main.cpp中包括诸如mainWindow.setAttribute(Qt::WA_QuitOnClose)之类的语句。
我只想让应用程序在主窗口关闭时完全退出。
如果有区别的话,我正在使用qextserialport库。
qextserialport
据我所知并不创建任何线程。 - Lol4t0