C、C++如何实现任务栏图标隐藏,而只有一个浮动在桌面的窗口
ModifyStyleEx(WS_EX_APPWINDOW,WS_EX_TOOLWINDOW);会失去拓展样式。。。我希望保留这些。。怎么做呢。。。...
ModifyStyleEx(WS_EX_APPWINDOW,WS_EX_TOOLWINDOW);会失去拓展样式。。。 我希望保留这些。。怎么做呢。。。
展开
1个回答
展开全部
直接把任务栏隐藏好了,够狠吧? GetTaskmanWindow,利用它对Windows的任务栏进行操作。这个函数返回拥有任务栏按钮的窗口句柄。在微软的MSDN文档中,对任务栏是这样描述的:"……Windows界面包含一个特殊的应用程序桌面工具栏,叫做任务栏。任务栏可以用于在打开的不同窗口之间进行切换,以及启动新的应用程序……。任务栏包含有开始菜单、任务栏按钮、快捷菜单和状态显示区……"。可惜在Win32 API的正式问当中没有能存取任务栏的函数。因此我们必须使用未公开的Win32 API函数。 下面是GetTaskmanWindow的原型: HWND GetTaskmanWindow(); 这个函数位于User32.lib中,因为它是一个未公开的API,所以要用GetAddress和GetModuleHandle函数动态加载: typedef HWND (WINAPI*PROCGETTASKMANWND)(); PROCGETTASKMANWND GetTaskmanWindow; HMODULE hUser32 = GetModuleHandle("user32"); GetTaskmanWindow = (PROCGETTASKMANWND) GetProcAddress(hUser32,"GetTaskmanWindow"); 下面的代码是调用GetParent函数获取任务栏句柄。 HWND TaskBarWnd = GetParent(GetTaskmanWindow()); 然后隐藏任务栏ShowWindow(TaskBarWnd,SW_HIDE); 大功告成!
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询