我是想實現在對話框中標簽式浏覽子對話框的功能的,但是執行到這個SetWindowPOS函數的時候總是出錯,我是設斷點查看的。
這是部分代碼:
BOOL ShowDlg::OnInitDialog()
{
CDialog::OnInitDialog();
// TODO: 在此添加額外的初始化
CRect tabRect;
m_tab.InsertItem(0,_T("Printer"));
m_printer.Create(IDD_PRINTER,&m_printer);
m_tab.GetClientRect(&tabRect);
m_printer.SetWindowPos(NULL,tabRect.left,tabRect.top,tabRect.Width(),tabRect.Height(),SWP_SHOWWINDOW);
return TRUE; // return TRUE unless you set the focus to a control
// 異常: OCX 屬性頁應返回 FALSE
}
主對話框中的Tab Control控件已定義變量m_tab, 子對話框已定義變量m_printer。
工程文件是單文檔類型而不是對話框類型,我已經試過這段代碼放在對話框類型的工程中是沒問題的,唯獨在單文檔類型程序中出問題。
我參考的是這裡的代碼:
http://www.jizhuomi.com/software/207.html
參數NULL換成HWND_TOP。要麼是具體兄弟窗口的句柄,要麼是HWND_TOP/HWND_BOTTOM之類,文檔中沒說可以用NULL。