1、用vc新建一個dialog1工程。屬性默認。
2、insert一個dialog2,改為child。
3、在dialog1中包含dialog2頭文件,在一個按鈕事件中顯示dialog2:
Cdialog2 *p = new Cdialog2(this);
p->Create(IDD_Dialog2);
p->SetParent(this);//設置dialog1為父窗口
p->ShowWindow(SW_SHOW);
這樣,dialog2便嵌到dialog1了,比用tabcontrol方便吧。現在很多應用程序的“設置”界面應該就是這樣做的。
http://blog.csdn.net/lanmanck/article/details/3857896
讓子窗口嵌入到父窗口是一個比較有意思的事情,比如我們常見的軟件安裝對話框,用此種方法就很方便的實現每個界面。如果只有一個窗體,那放起控件來可真要崩潰了。
VC-MFC也可以實現,請參考這篇文章:http://blog.csdn.net/lanmanck/archive/2009/02/02/3857896.aspx
QT中也可以實現,其實很簡單,以QT4.5.2和QT4.7.0為例。
1、在當前工程新建一個窗口,繼承自QDialog或者QWidget均可。
2、新建該窗口:f2 = new Form2(this);
3、在新窗口的構造函數中加上這句話:setWindowFlags(Qt::CustomizeWindowHint|Qt::FramelessWindowHint);hide();
另可以使用move移到合適位置。此位置相對於父窗口而言,而非桌面或者其他窗口。
4、在父窗口中調用該子窗口的show()即可。
http://blog.csdn.net/styyzxjq2009/article/details/7937508
