qt가 매우 새로워서 자식 대화 상자가있는 데스크톱 응용 프로그램을 열려고 시도하고 있습니다. 버튼은 부모 대화 상자를 가리 킵니다. 나는 그럭저럭 할 수 있었다. 그러나 내가 그것을 달리게하고, 'go'을 클릭 할 때마다, 그것은 나의 부모님의 창문에 나를 가리키고, 그 다음 부서진다! 나는 this link에서 코드를 얻었습니다. 첫 번째 대답은 작동하도록 한 것이었고 두 번째 응답은 전혀 작동하지 않았습니다. 내 MainWindow (부모) 대화 상자가 설문 조사이고 내 자식 대화 상자가 전역입니다. (나는 그들이 이상한 이름을 지었다는 것을 안다.시작하는 자식 대화 상자를 닫고 부모 대화 상자로 들어가면 Qt 데스크톱 응용 프로그램이 계속 충돌합니다.
내 MAIN.CPP
#include "survey.h"
#include <QApplication>
#include "global.h"
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
QWidget survey;
survey.show();
global popup(&survey);
popup.show();
/*
survey w;
w.show();
*/
return a.exec();
}
내 global.cpp
#include "global.h"
#include "ui_global.h"
#include "survey.h"
global::global(QWidget *parent) :
QDialog(parent),
ui(new Ui::global)
{
ui->setupUi(this);
}
global::~global()
{
delete ui;
}
void global::on_Go_clicked()
{
//survey *nWin;
auto win = new survey();
win->setAttribute(Qt::WA_DeleteOnClose);
win->show();
deleteLater();
}
내가 그것을 실행하면 내 데스크톱 응용 프로그램이 충돌하지 않는 그래서 변경해야합니까?
[mcve]를 제공해야하며 현재 코드는 제공하지 않습니다. 간격이 많이 있습니다. – eyllanesc