当前位置: 首页 > 知识库问答 >
问题:

隐藏/显示Windows任务栏的应用程序图标(LabVIEW-WINAPI)

姚高韵
2023-03-14

我有一个用LabVIEW创建的应用程序,我需要在运行时在Windows任务栏上显示/隐藏应用程序图标。我认为WINAPI可以用于此目的,我尝试使用ShowWindow函数(user32.dll)

显示窗口(hWnd,SW_HIDE)-

显示窗口(hWnd,SW_SHOWMINIMIZED)-

共有1个答案

景靖琪
2023-03-14

默认情况下,“正常”可见的非自有窗口会显示一个任务栏按钮,并且任务栏按钮在除SW_HIDE之外的所有状态下都可见。

MSDN还记录了几个可以用来覆盖按钮的技巧:

每当应用程序创建不属于自己的窗口时,Shell都会在任务栏上创建一个按钮。要确保窗口按钮放置在任务栏上,请使用WS_EX_APPWINDOW扩展样式创建一个无主窗口。要防止窗口按钮放置在任务栏上,请使用WS_EX_TOOLWINDOW扩展样式创建无主窗口。作为替代方案,您可以创建一个隐藏窗口,并将此隐藏窗口设为可见窗口的所有者。

... 如果要将窗口的样式动态更改为不支持可见任务栏按钮的样式,必须先隐藏窗口(通过使用SW_hide调用ShowWindow),更改窗口样式,然后显示窗口。

另一种选择是使用ITaskbarList界面,它可以让你完全控制任务栏按钮。

 类似资料:
  • 问题内容: 我正在使用桌面应用程序创建GUI。我使用此代码根据平台屏幕的分辨率设置的GUI大小。 问题是,当我运行该应用程序时,GUI覆盖了所有屏幕。Windows任务栏也隐藏在GUI的后面。 我希望无论任务栏的大小如何,任务栏在所有情况下都应该可见。我该如何实现? 问题答案: 关于什么 ?

  • 我有一个MFC应用程序。在我的应用程序中,如果我在Windows XP上运行,它工作正常。但如果我在Windows Vista中运行,MFC对话框会隐藏在任务栏后面。 我使用了这个代码,但它隐藏了任务栏。但我想在任务栏上方显示应用程序。

  • 当我最大化我的应用程序时,我想隐藏任务栏。它以全屏模式启动,并带有隐藏的任务栏(在MainWindow.xaml中定义,使用以下代码定义): 我想能够得到应用程序回到正常窗口模式,然后回到全屏隐藏任务栏。 当我单击标题栏中的最大化按钮时,应用程序进入全屏模式,但任务栏仍然可见。我已经尝试将ResizeMode设置为NoResize,但它对我不起作用。 下面是我的代码:

  • 我想在屏幕上隐藏应用程序,但不在任务栏上,我尝试了以下方法: 但这不管用,知道吗?

  • 问题内容: 我正在尝试在Windows中显示。如何在Windows任务栏上显示(如)? 问题答案: 对话框本身不能具有任务栏条目,但是您可以构造一个没有任何可见效果的框架,并将其用作对话框的父级。然后,该对话框看起来像具有任务栏条目。以下代码显示了如何执行此操作:

  • 我有一个前台服务,按下按钮后会显示一个窗口。有没有办法隐藏(或过度隐藏)服务窗口显示屏上的系统状态栏?有我可以用的旗子吗?我试着到处找,但运气不好。