如何隐藏一个窗口在任务栏

介绍 有时候,我们可能想要创建一个不需要烦人的任务栏框的应用程序。我希望这段代码能有所帮助。 步骤 全球声明 下面是一些关于使用界面的简短说明: DECLARE_INTERFACE(iface)用于声明不是从基接口派生的接口。 DECLARE_INTERFACE_(iface, baseiface)用于声明一个确实是从基接口派生的接口。这是被使用的。接口将派生自IUnknown接口。 然后,让我们为派生接口创建一个别名定义。隐藏,复制CodeDECLARE_INTERFACE_ (ITaskbarList IUnknown) { STDMETHOD(QueryInterface)(THIS_ REFIID riid,LPVOID* ppvObj) STDMETHOD_ (ULONG AddRef)(这)纯; STDMETHOD_ (ULONG,释放)(这)纯; STDMETHOD (ActiveTab) (HWND)纯; STDMETHOD (AddTab) (HWND)纯; STDMETHOD (DeleteTab) (HWND)纯; STDMETHOD (HrInit) (HWND)纯; }; / /别名 typedef ITaskbarList * LPITaskbarList; 在基于对话框的类声明 是否要将pTaskbar声明为对话框类的属性,这取决于您。实际上,这不是问题,因为实现(下一步)只需要窗口句柄(HWND)。隐藏,复制Codeclass CMyDlg: public CDialog { 。 。 //Init我们的任务栏处理程序 LPITaskbarList pTaskbar; 。 。 } 不要忘记在对话框类的构造方法中将pTaskbar设置为NULL。 初始化隐藏,复制CodeBOOL CMyDlg: OnInitDialog () { 。 。 //初始化组件对象模型(COM) CoInitialize (0); 我们调用下面的函数,因为我们只需要创建一个对象 CoCreateInstance (CLSID_TaskbarList 0 CLSCTX_INPROC_SERVER IID_ITaskbarList (void * *), pTaskbar); 下面的函数将初始化任务栏列表对象 pTaskbar→HrInit(这个); 。 。 。 } 实现 这是你可以用来隐藏任务栏中的“框”的功能。隐藏,复制Codevoid CMyDlg: DeleteTaskbar () { / /隐藏它 pTaskbar→DeleteTab(这个); } 尝试pTaskbar的其他方法,你会体验到一些东西。 如果这篇文章没有解释太多的话,请原谅。我的目的只是提供另一种选择。因为这个“方式”还没有发布。 本文转载于:http://www.diyabc.com/frontweb/news10804.html

原文地址:https://www.cnblogs.com/Dincat/p/13473255.html