更改多窗口应用程序任务栏组中显示的图标

2024-02-09

在 Windows 7 上,应用程序可以控制如何在任务栏上对 Windows 进行分组。 Windows 有一些与可执行文件、快捷方式创建方式、程序名称等相关的默认设置,以应用一些默认分组。基于主机的应用程序(例如 Java)的问题在于,许多程序使用相同的可执行文件,因此 Windows 有一些注册表设置来将 javaw.exe 设置为主机应用程序。发生这种情况时,应用程序必须在运行时配置如何对 Windows 进行分组并启用固定到任务栏。我已经在设置了应用程序用户模型 ID http://msdn.microsoft.com/en-us/library/windows/desktop/dd378459%28v=vs.85%29.aspx以便根据需要对 Windows 进行分组。

我还没有找到解决方案的问题是,对于多窗口应用程序:如何设置要在任务栏上使用的稳定图标?应用程序的默认 Windows 行为,例如有两个窗口,每个窗口都有自己的图标,任务栏图标显示第一个打开的窗口的图标,如果该窗口关闭,它将更改为另一个窗口,并且每次打开和关闭窗口时都会重复该过程。

当用户将应用程序固定到任务栏设置时,有一些 API 可以设置图标System.AppUserModel.RelaunchIconResource 窗口属性 http://msdn.microsoft.com/en-us/library/windows/desktop/dd391573%28v=vs.85%29.aspx,但文档说这个图标是在应用程序被固定时使用的,因此根据该图标,只有当应用程序从该固定的应用程序运行时才使用它,这对于无法固定的应用程序(或开发人员不想允许固定)。

有一些选项,例如使用图标生成新的可执行文件(从该应用程序启动 JVM)、使用正确的 AppUserModelID 创建快捷方式。这些对我来说不是解决方案,因为应用程序是使用 Java WebStart/JNLP 分发的,因此应用程序快捷方式是由 Java 创建的,并且启动器被标记为主机应用程序(理应如此)

另一种解决方案是在 Windows 7 上运行时为每个窗口设置相同的图标,该图标(任务栏除外)在 Windows 7 的 Aero 模式下不是很突出,但在禁用 Aero 的情况下,它是非常突出的。 Alt+tab 切换器上使用的图标,没有窗口预览,我想让每个窗口看起来都不同

注意:这是一个标记的 Java,但对于任何使用主机可执行文件(javaw.exe、python.exe ...)的平台来说确实是一个问题


None

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

更改多窗口应用程序任务栏组中显示的图标 的相关文章

随机推荐