如何使用Qt禁用窗口的关闭按钮?

5
我希望在操作开始时禁用窗口(主应用程序窗口)上的关闭按钮,以便用户无法退出应用程序,并在操作完成后再次启用它。我如何在Qt应用程序中实现这一点?我的平台是Windows 7。
或者,如果用户按下关闭按钮并退出应用程序,则可以显示一条消息,指出后台正在运行进程,并中止关闭应用程序。
我该如何实现其中任何一个?

2
这里有一些可能对你有帮助的内容:https://dev59.com/FmQm5IYBdhLWcg3wmwDz - Robert Wadowski
1个回答

5

如果你想禁用按钮,可以使用以下方法:

auto flags = windowFlags();//save current configuration
//your main configuration which do the trick
setWindowFlags(Qt::CustomizeWindowHint | Qt::WindowTitleHint | Qt::WindowMinMaxButtonsHint );
//...
setWindowFlags(flags);//restore

如果你确定这样的“特性”不会引起用户的反感,那么可以使用它;否则,请使用评论中的链接。

3
谢谢,但是这会导致应用程序过早退出。当调用此函数时,"MyApp.exe以0代码退出"。 - zar

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接