windows/mfc实现窗口隐藏同时 在任务栏上无图标显示功能

版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/u013105439/article/details/53271487

当实现窗体隐藏时,同时让任务栏隐藏大多直接改变样式就行
只需要执行
ModifyStyleEx(WS_EX_APPWINDOW, WS_EX_TOOLWINDOW);

但是 在实际效果中,该方法不是很理想
1、隐藏的程序无法接受WM_SIZE通知消息
2、由于我使用了去边框属性,以及隐藏显示切换,导致该功能失效

后来经过网上查找 发现了一个 直接通过从任务栏删除 图标的方法


BOOL ShowInTaskbar(HWND hWnd, BOOL bShow)
{
    HRESULT hr; 
    ITaskbarList* pTaskbarList;
    hr = CoCreateInstance( CLSID_TaskbarList, NULL, CLSCTX_INPROC_SERVER,  
        IID_ITaskbarList, (void**)&pTaskbarList );
    if(SUCCEEDED(hr))
    {
        pTaskbarList->HrInit();
        if(bShow)
            pTaskbarList->AddTab(hWnd);
        else
            pTaskbarList->DeleteTab(hWnd);
        pTaskbarList->Release();
        return TRUE;
    }

    return FALSE;
}
展开阅读全文

没有更多推荐了,返回首页