我正在编写一个程序,我在构造函数中调用QWidget::winId()
:
debug_window::debug_window(QWidget *parent) :
QDialog(parent),
ui(new Ui::debug_window),
hk(NULL)
{
this->ui->setupUi(this);
this->hk = new TestClass(this, this->winId())
}
但这会导致我的程序崩溃,甚至在创建窗口之前。我已经发现winId的调用会导致崩溃,可能是因为此时没有窗口存在。 (如果我错了,请纠正我)。 可悲的是,没有信号" windowCreated()"或类似的东西。那么有没有办法找出窗口是创建的,或者如何解决这个问题?
感谢您的帮助。
答案 0 :(得分:1)
创建信号并在构造函数的末尾发出它。