2009-06-29 41 views
2

我正在使用Qt/MFC Migration Framework的項目,我試圖在Qt對話框中重新使用一些現有的MFC控件。在Qt選項卡控件中的MFC控件

有誰知道是否可以在QTabWidget中插入MFC控件(CDialog或CWnd)。現在我們正在做相反的事情,我們有一個MFC對話框,它帶有一個由MFC選項卡(CDialog)和Qt選項卡(QWinWidget)混合填充的選項卡控件。但是,這種方法讓我很頭疼,因爲QWinWidget控件沒有正確繪製,也沒有正確接收焦點或鍵盤輸入。我希望在QTabWidget中使用Qt對話框比這種方法更好。

回答

2

看着你使用QWinWidget,你一定是來過QWinHost?只需使用QWinHost作爲QTabWidget的頁面:

HWND w = ...; 
QTabWidget * tw = new QTabWidget; 
QWinHost * wh = new QWinHost; 
wh->setWindow(w); 
tw->addTab(tr("Page with Windows Control"), wh);