簡體   English   中英

如何從任務欄隱藏CDialogEX? (MFC C ++)

[英]how to hide CDialogEX from taskbar? (MFC C++)

我有主機,當有人按下按鈕時,我打開一個CDialogEX。

打開它后,它會得到一個空的任務欄選項卡,沒有標題或圖標...

我希望它作為主機的子窗口打開,並且沒有任務欄選項卡。

我試過使用樣式和東西,但沒有任何效果。

有任何想法嗎?

我猜您正在傳遞NULL作為父窗口。 傳遞主應用程序窗口的窗口句柄。 當您傳遞NULL ,創建的窗口是一個無主的頂級窗口,並且它們具有任務欄按鈕。

一些參考書目適合您:

現在是真正的工作。 聲明一個

CWnd m_wndHidden;

在你的班上

然后實現以下方法

BOOL CMyMDIChildFrame::PreCreateWindow(CREATESTRUCT& cs) 
{ 
     if (!__super::PreCreateWindow(cs))
         return FALSE;

     // Create hidden window
     if (!::IsWindow(m_wndHidden.m_hWnd))
     {
        pstrOwnerClass = AfxRegisterWndClass(0);
        if (!m_wndHidden.CreateEx(0, pstrOwnerClass, _T(""), WS_POPUP,
                CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT,
                NULL, 0))
            return FALSE;
     }

    cs.hwndParent = m_wndHidden.m_hWnd;
    return TRUE;
}

我提供的第一個和最后一個鏈接都是基於這種方法的。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM