[問題] qt整合class(已解決)

看板C_and_CPP (C/C++)作者 (sora)時間15年前 (2010/10/20 14:12), 編輯推噓0(005)
留言5則, 3人參與, 最新討論串1/1
之前寫了2個視窗程式,分別為 //p1.h class P1 : public QWidget{ Q_OBJECT P1(); } //p1.cpp P1::P1() : QWidget() { 內容省略 } //main.cpp int main() { QApplication a(argc, argv); P1 w; w.show(); return a.exec(); } ----------------------------- //p2.h class P2 : public QWidget{ Q_OBJECT P2(); } //p2.cpp P2::P2() : QWidget() { 內容省略 } //main.cpp int main() { QApplication a(argc, argv); P2 w; w.show(); return a.exec(); } ----------------------------- 我想把這2個程式整合成一個程式 我一開始是把p1.cpp p1.h p2.cpp p2.h 放一起 然後重寫main,如下 //main.cpp int main() { QApplication a(argc, argv); P1 w1 P2 w2; w1.show(); w2.show(); return a.exec(); } 但是這樣會變成 他一次執行p1跟p2 而跑出2個視窗 於是我又寫了一個p3 如下 //p3.cpp P3::P3() : QWidget() { P1 w1; w1.setParent(this); w1.show(); } 並把main改為 //main.cpp int main() { QApplication a(argc, argv); P3 w; w.show(); return a.exec(); } 想說這樣可以藉由P3來呼叫P1,如果成功的話 就可以靠P3來執行P1及P2 但是P1卻沒有出現 只出現空的P3視窗 想請問要怎麼讓P1或P2能出現在P3的視窗上呢? 因為我現在必須要做到可以自由切換P1 P2這2個視窗的程式 有人知道錯誤在哪邊嗎 (._.?) -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.40.69.94

10/20 14:51, , 1F
p3裡面 p1宣告改ptr呢
10/20 14:51, 1F

10/20 14:51, , 2F
然後我其實不太懂..你的目的
10/20 14:51, 2F

10/20 15:34, , 3F
同樓上, 你到底想達成什麼
10/20 15:34, 3F

10/20 17:36, , 4F
我想把2個project整合為一個project
10/20 17:36, 4F

10/20 17:49, , 5F
改成P1 *w1 = new P1();就可以了 感謝1樓 感謝2樓
10/20 17:49, 5F
※ 編輯: vm3gjp4 來自: 114.40.69.94 (10/20 17:50)
文章代碼(AID): #1CleX0iN (C_and_CPP)
文章代碼(AID): #1CleX0iN (C_and_CPP)