문제

나는 쓰고있다 로그인 창 Qt.

사용자가 확인을 클릭하면 로그인 창, show a "서버에 연결 ..."위젯, 메인 창 일단 ConnectToserver 방법이 그 작업을 수행했습니다.

그러나, 그 위젯 때만 나타납니다 메인 창 표시되고 즉시 사라집니다 (닫지 않아야합니다!)

이 문제를 어떻게 해결합니까?

void LoginWindow::blah()
   {
   close();

   QWidget widget;
   widget.show();

   //calls to the "connecttoserver method"

   Main *main = new Main(student->getInfo()[0], student->getInfo()[1], student->getInfo()[2], view);
   main->show();
       }
   }
도움이 되었습니까?

해결책

QWIDGET은 스택에서 자동으로 선언되므로 메소드가 반환 될 때 파괴됩니다. 대신 힙에 선언하고 싶습니다.

QWidget *widget = new QWidget();
widget->show();

다른 팁

원자 외에도 대답, 응용 프로그램의 QuitonlastWindowClosed를 False로 설정했는지 확인하십시오. 그렇지 않으면 로그인 창을 닫고 기본 창을 열 사이에 응용 프로그램이 종료됩니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top