如何禁用Qt中打开的子窗口上的父窗口?
我想禁止在主窗口中进行任何操作,包括关闭它。而开放的孩子 我尝试:如何禁用Qt中打开的子窗口上的父窗口?,qt,Qt,我想禁止在主窗口中进行任何操作,包括关闭它。而开放的孩子 我尝试: // child window Settings::Settings(QWidget *parent) : QWidget(parent), ui(new Ui::Settings) { ui->setupUi(this); ((QWidget*)parent)->setEnabled(false); // or parent->setEnabled(false); ...
// child window
Settings::Settings(QWidget *parent) :
QWidget(parent),
ui(new Ui::Settings)
{
ui->setupUi(this);
((QWidget*)parent)->setEnabled(false); // or parent->setEnabled(false);
...
在Settings->show()上出现分段错误代码>
我尝试从设置构造函数/析构函数发送信号
至MainClass
slot
void MainClass::Enable(bool enable)
{
qDebug() << "detect signal enable"; //
this->setEnable(enable);
}
void MainClass::Enable(bool Enable)
{
qDebug()设置启用(启用);
}
但信号没有发出
当然,我将设置
连接到main类
)。
信号发射在设置
的任何其他功能中工作。对于子窗口,最好从(非)继承,因为第一个是专门为对话框设计的。从Qt文档:
QDialog
类是对话框窗口的基类
你需要的方法是。它会将您的对话框作为一个窗口打开,该窗口将阻止其他应用程序窗口的输入,直到其关闭。对于子窗口,最好从(而不是)继承,因为第一个窗口是专为对话框设计的。从Qt文档:
QDialog
类是对话框窗口的基类
你需要的方法是。它将以对话框的形式打开您的对话框,该对话框将阻止其他应用程序窗口的输入,直到其关闭。“我想禁止主窗口中的任何操作,包括其关闭”-通常会将设置设为(模式)QDialog。但是,如果父对象指向有效对象,我看不出这将如何崩溃。(在调试器中运行它)“我想禁止主窗口中的任何操作,包括其关闭”-通常会为此设置(模式)QDialog。但如果父对象指向有效对象,我看不出这将如何崩溃。(在调试器中运行它)@我们如何从QDialog模式窗口访问父类小部件?@JohnDoe我们如何从QDialog模式窗口访问父类小部件?