0

我正在使用自定义对话框,并通过调用来显示它:

this->numberPick.move(point);
this->numberPick.setWindowFlags(Qt::SplashScreen);
this->numberPick.setParent(this);
this->numberPick.setModal(true);
this->numberPick.exec();

void MainWindow::on_boardView_clicked(const QModelIndex &index){}所有这些代码都在(事件“单击” from QTableView)中调用。

这个问题很奇怪。我需要单击我的按钮 3 次才能显示对话框。第二次点击后 Qt Creator 给了我这样的警告"QDialog::exec: Recursive call detected"

有趣的是,这只发生一次(在单个应用程序实例中)。下一次点击就像一个魅力。

4

1 回答 1

0

我还没有解决这个问题,但我做了一些解决方法,它的工作原理是这样的:

this->numberPick = new NumberPick(this);
this->numberPick->setCell(cell);
this->numberPick->move(point);
this->numberPick->setWindowFlags(Qt::SplashScreen);
this->numberPick->exec();
delete this->numberPick;

但问题仍然悬而未决

于 2013-06-18T11:25:19.473 回答