Это упрощенный пример, повторяющий проблему.
Это код родительского окна:
Код: Выделить всё
Dialog::Dialog(QWidget *parent)
: QDialog(parent)
{
QVBoxLayout * mainLayout = new QVBoxLayout;
this->setLayout(mainLayout);
QPushButton * pTextDlgButton = new QPushButton("Text dlg",this);
connect(pTextDlgButton , SIGNAL(clicked()) , this , SLOT(OnTextDlgPress()));
mainLayout->addWidget(pTextDlgButton);
}
Dialog::~Dialog() {}
void Dialog::OnTextDlgPress()
{
QTextDlg dlg;
dlg.exec();
}
Код: Выделить всё
QTextDlg::QTextDlg()
{
QVBoxLayout * mainLayout = new QVBoxLayout;
this->setLayout(mainLayout);
QTextEdit * pTextEdit=new QTextEdit();
mainLayout->addWidget(pTextEdit);
}
Подробнее здесь: https://stackoverflow.com/questions/783 ... ild-qdialo