关于网友提出的“ 求助 任务栏图标 隐藏及恢复显示的问题,谢谢大家!”问题疑问,本网通过在网上对“ 求助 任务栏图标 隐藏及恢复显示的问题,谢谢大家!”有关的相关答案进行了整理,供用户进行参考,详细问题解答如下:
问题: 求助 任务栏图标 隐藏及恢复显示的问题,谢谢大家!
描述: 我的代码:
隐藏任务栏图标:
OnButton1()
{
DWORD Style = ::GetWindowLong(this->m_hWnd,GWL_EXSTYLE);
Style = WS_EX_TOOLWINDOW ;
ShowWindow(FALSE);
::SetWindowLong(this->m_hWnd,GWL_EXSTYLE,Style);
ShowWindow(TRUE);
SetWindowLong(this-> GetSafeHwnd(),GWL_EXSTYLE,WS_EX_TOOLWINDOW);
}
恢复任务栏图标:
OnButton1()
{
::SetWindowLong(this->m_hWnd, GWL_EXSTYLE, ::GetWindowLong(this->m_hWnd,GWL_EXSTYLE) & ~ WS_EX_TOOLWINDOW );
ShowWindow(SW_SHOW);
}
可以隐藏任务栏图标,但恢复却出现问题,任务栏没有图标显示啊,请教如何做啊。
解决方案1:ShowWindow(SW_HIDE);
ModifyStyleEx(WS_EX_APPWINDOW, WS_EX_TOOLWINDOW);
ShowWindow(SW_SHOW);
ShowWindow(SW_HIDE);
ModifyStyleEx(WS_EX_TOOLWINDOW, WS_EX_APPWINDOW);
ShowWindow(SW_SHOW);
解决方案2: 这样来隐藏吧。
//隐藏
static CRect rtApp;
GetWindowRect(&rtApp);
SetWindowPos(&wndTop,0,0,0,0,SWP_HIDEWINDOW); //通过设置窗口大小达到隐藏的目的
ModifyStyleEx(WS_EX_APPWINDOW, WS_EX_TOOLWINDOW);
//删除状态栏的图标
//......
//显示
ModifyStyleEx(WS_EX_TOOLWINDOW, WS_EX_APPWINDOW);
::SetWindowPos(GetSafeHwnd(), HWND_NOTOPMOST, rtApp.left, rtApp.top, rtApp.Width(),
rtApp.Height(), SWP_SHOWWINDOW);
//增加状态栏的图标
//......
}
以上介绍了“ 求助 任务栏图标 隐藏及恢复显示的问题,谢谢大家!”的问题解答,希望对有需要的网友有所帮助。
本文网址链接:http://www.codes51.com/itwd/2251595.html