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初期化されていないようです

于 2010-12-11T22:30:24.943 に答える
1

他の人が言ったように、 addLoginData は初期化されていません。あなたはこれを行うことはできません:

if(!addLoginData) { ... }

addLoginData を 0 に初期化しない限り。したがって、Georg が言ったように、それを除いて初期化します。

MainWindow::MainWindow() : addLoginData(0)

(「0」に注意してください)

于 2010-12-12T02:28:10.357 に答える
0

1 つの可能性は、初期化していないことですaddLoginData。その場合、次のようなものを使用します。

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