我試圖讓一個沒有邊框或框架的CDialog顯示在任務欄中。CDialog不顯示在任務欄
它在CWinApp的InitInstance(用於更新應用程序)中創建,我試圖設置WS_EX_APPWINDOW標誌,但它仍然不顯示在任務欄中。
任何想法?
編輯: 如在資源中定義:
IDD_UPDATEFORM_DIALOG DIALOGEX 0, 0, 246, 124
STYLE WS_POPUP
EXSTYLE WS_EX_APPWINDOW
FONT 8, "MS Shell Dlg", 400, 0, 0x1
BEGIN
END
作爲用於:
UpdateForm *dlg = new UpdateForm(UPDATE_FILES, CWnd::GetDesktopWindow());
INT_PTR nResponse = dlg->DoModal();
UpdateForm::UpdateForm(int updateType, CWnd* pParent) : CDialog(IDD_UPDATEFORM_DIALOG, pParent)
{
m_bInit = false;
m_hIcon = AfxGetApp()->LoadIcon(IDI_ICON);
m_Progress = new DesuraProgress();
m_updateType = updateType;
}
仍顯示像這樣:
聰明,但當有人有非標準的邊框尺寸時,它會失敗。這些是可配置的,你知道。 – 2010-07-13 03:35:26
嗯,任何方式來獲得客戶區域抵消? – Lodle 2010-07-13 05:09:21