如何检查Qwidget是否存在

时间:2010-12-11 21:11:13

标签: c++ qt qwidget

在标题中如何检查QWidget中的子类是否存在?

当我尝试类似的东西时,它会破坏应用程序结束错误

void MainWindow::slotAddLoginData() {
    if(!addLoginData) {
        addLoginData = new AddLoginData(this);
        connect(this, SIGNAL(setEnabledALDbtnOK(bool)),
        addLoginData, SLOT(btnOkEnabled(bool)));

    }
    addLoginData->show();
    addLoginData->activateWindow();

}

3 个答案:

答案 0 :(得分:1)

看起来addLoginData未初始化

答案 1 :(得分:1)

正如其他人所说,addLoginData未初始化。你不能这样做:

if(!addLoginData) { ... }

除非您将addLoginData初始化为0。 所以,正如乔治所说,初始化它,除了那个..

MainWindow::MainWindow() : addLoginData(0)

(注意“0”)

答案 2 :(得分:0)

一种可能是您尚未初始化addLoginData。在这种情况下使用类似的东西:

MainWindow::MainWindow()
  : addLoginData()
  // ...
{
    // ...
}