Qt::show()中的崩溃
我已经编写了显示弹出对话框(QDialog)的代码,悬停在QToolButton上。我反复得到以下堆栈跟踪。这是预期的吗Qt::show()中的崩溃,qt,qt4,Qt,Qt4,我已经编写了显示弹出对话框(QDialog)的代码,悬停在QToolButton上。我反复得到以下堆栈跟踪。这是预期的吗 0 QtGui 0x0642d209 QWindow::windowState() const + 9 1 libqcocoa.dylib 0x0b10e0f4 0xb0fe000 + 65780 2 QtGui 0x0642c0
0 QtGui 0x0642d209 QWindow::windowState() const + 9
1 libqcocoa.dylib 0x0b10e0f4 0xb0fe000 + 65780
2 QtGui 0x0642c0e0 QWindow::setVisible(bool) + 736
3 QtWidgets 0x0693524b QWidgetPrivate::show_sys() + 907
4 QtWidgets 0x06916795 QWidgetPrivate::show_helper() + 469
5 QtWidgets 0x069172e8 QWidget::setVisible(bool) + 1128
6 QtWidgets 0x06ad6573 QDialog::setVisible(bool) + 243
7 QtWidgets 0x06916544 QWidget::show() + 180
这是已知的堆栈跟踪吗?我确保我使用的是共享的\u ptr,并且在任何情况下都不为空。并且没有两个弹出窗口同时可见
添加调用代码:
fDialog.reset(new kcqt::QtPopupWidget(kcqt::QtPopupArrow::eArrowEast, false));
fDialog->setStyleSheet(fIPopupDialog);
fDialog->update();
//Orient Popup south-west when it does not lie in the visible window
if((parentGlobalLocation.y()+fBookElementsDialog->height()/2)>aMain->height())
{
fDialog->setGeometry(parentGlobalLocation.x()-dialogSize.width(),parentGlobalLocation.y()-dialogSize.height()+45, dialogSize.width(), dialogSize.height());
fDialog->updateGeometry();
fDialog->updateArrowOrientation(kcqt::QtPopupArrow::eArrowSouthEast_East);
fDialog->update();
fDialog->show();
return;
}
它在
Qt::Show()
中崩溃,请在此处发布您的代码以更好地理解您的问题。Azeem,我已更新了描述中的代码。当它崩溃时,调试器会说什么?哪一排?数据是否一致?指针是否正常?什么是fDialog
?