[英]Globally remove the ? button from windows titles in qt applications
我正在使用qt在Windows上编写c ++应用程序,而qt总是将这个“?” 在窗口标题中单击。 目前,我正在每个类的构造函数中删除它,这非常令人讨厌。 有没有办法在一个地方从整个应用程序中全局删除按钮?
没有特定的方法,但是如果所有对话框/窗口都需要它,则可以创建基类并在其构造函数中取消设置此标志:
this->setWindowFlags(this->windowFlags() & ~Qt::WindowContextHelpButtonHint);
然后在所有对话框中使用此基本对话框,而不是QDialog。
我有一个自定义的QDialog
,所有其他对话框都从该对话框派生而来,但除此之外(几乎)没有任何作用。
class dialog : public QDialog
{
Q_OBJECT
public:
dialog(QWidget* = 0, Qt::WindowFlags = 0);
};
dialog::dialog(QWidget* parent, Qt::WindowFlags f) : QDialog(parent, f)
{
setWindowFlags(this->windowFlags() & ~Qt::WindowContextHelpButtonHint);
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.