1
我有一個SDI應用程序。在應用程序中有一個無模式對話框,用於顯示一些消息,如在工作期間與服務器進行通信。問題是,當對話框的父窗口設置爲主框架時,ShowWindow方法不能按預期工作。看起來對話框被主框架覆蓋。如果我在ShowWindow調用旁邊放一個Sleep調用,我可以看到對話框。當睡眠結束時,對話框消失。如果我沒有設置對話框的父窗口,則ShowWindow調用正常工作。但我確實想設置對話框的父窗口。那麼如何解決它?CDialog ShowWindow問題
爲什麼你想讓無模對話成爲主要對話框的孩子?除非有很好的理由建立這種關係,否則將NULL傳遞給父項。我覺得你可能誤解了無模式對話框的父窗口的語義。 – 2011-06-13 12:04:59
主要原因是如果對話框的父窗口沒有設置,它將顯示一個任務欄按鈕。而且我還發現,如果創建的對話框像pDlg-> Create(IDD,AfxGetMainWnd()),它自動設置父窗口,則ShowWindow調用將正常工作。設置父窗口的兩種方法有什麼區別嗎? – Wilbur 2011-06-13 12:18:16
您可以設置哪些樣式不會獲取該任務欄按鈕。例如,將它設置爲工具提示窗口(如果這就是你想要的) – 2011-06-13 12:27:48