2013-02-17 4 views
0

내 프로젝트에서 Qt Designer를 사용하여 2 * .ui를 만들었습니다. 하나는 기본 화면이고 다른 하나는 대화 상자 위젯입니다. 대화 상자 위젯은 주 화면의 기능 중 하나에 의해 호출됩니다.Qt 다른 Ui 호출 Qt

대화 상자 위젯을 호출하기 위해 기본 창에서 함수를 어떻게 연결할 수 있습니까?

메인 윈도우의 메뉴에서 [About]> [Author]를 클릭하면 대화 위젯을 호출 할 수 있습니다.

도움이 될 것입니다.

감사합니다.

답변

2

대화 상자 포인터를 어디에 둘 것인지에 따라 다릅니다. 예를 들어, 주 윈도우에 신호를 만들고 대화 상자 show() 슬롯 (또는 모달이 필요할 경우 exec())에 연결할 수 있습니다. 또는 대화 상자 포인터를 기본 창에 유지하면 show/exec 메서드와 함께 직접 사용할 수 있습니다.

정보 -> 작성자 메뉴 : QAction을 만들어 메뉴에 추가해야합니다. 그리고 QAction은 대화 상자의 exec/show 슬롯에 연결할 수있는 신호를 트리거합니다().

+0

답장을 보내 주셔서 감사합니다. .ui 파일에서 생성 된 "ui_xxx.h"와 "xxx.h"및 "xxx.cpp"가 있기 때문에 혼란 스럽습니다. Dialog Widget show() 슬롯을 어디에 선언해야합니까? 그리고이 Dialog Widget 슬롯()에 연결하기 위해 Main Window 신호()를 어디에 선언해야합니까? – Wallace

+0

QDialog에는 이미 show/exec 슬롯이 있으므로 선언 할 필요가 없습니다. Main WIndow에 신호를 선언해야한다면, UI를 구현 한 MainWindow 클래스에서해야한다. (나는 당신 편이 어떻게되는지는 모르겠지만 setupUi를 통해 이루어진다 고 생각한다.) 그리고 UI를 상속 받았다. 수업. – ixSci