1

就像标题中一样,如何检查 QWidget 中的子类是否存在?

当我尝试类似的事情时,它会破坏应用程序结束抛出错误

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

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

}
4

3 回答 3

1

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

if(!addLoginData) { ... }

除非你将 addLoginData 初始化为 0。所以,正如 Georg 所说,初始化它,除了做那个..

MainWindow::MainWindow() : addLoginData(0)

(注意“0”)

于 2010-12-12T02:28:10.357 回答
1

看起来addLoginData没有初始化

于 2010-12-11T22:30:24.943 回答
0

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

MainWindow::MainWindow()
  : addLoginData()
  // ...
{
    // ...
}
于 2010-12-11T21:14:52.407 回答