【问题标题】:Why does the icon for my project look so horrible in Windows 7?为什么我的项目的图标在 Windows 7 中看起来如此糟糕?
【发布时间】:2013-01-20 19:55:20
【问题描述】:

我有一个针对 Windows 7 更新的旧 VB6 项目,包括 48x48 大小的图标。当我运行它时,任务栏中的图标显示为褪色。

我认为我在 .ico 文件中有所有必要的图标大小,但也许我遗漏了一些东西:

我在这里错过了什么?

【问题讨论】:

  • 您可以尝试这些建议,如果您找到明确的答案,请将其发布给我们。 stackoverflow.com/questions/10309875/…
  • @Beaner 我在我的回答中实现了解决方案,效果很好。

标签: windows-7 vb6


【解决方案1】:

VB6 仅支持 16 色图标,这会导致抖动,因此透明度信息仅限于指示像素是否透明的单个位。

与往常一样,您可以依靠一组 Windows 的 API 来克服这一限制。 这是一个论坛帖子的链接,该帖子解释了如何使用 256 色图标:VB6 System Tray Icon Color Depth

【讨论】:

    【解决方案2】:

    我从 XP 时代发现了一个 vbaccelerator article,它似乎也适用于 Windows 7。关键是要按照信中的说明进行操作。它仅适用于已编译的应用程序,而不适用于 IDE。最后,当您向图标添加 256x256 图像时,请确保在保存图标时它不是 PNG 压缩的(大多数编辑器都倾向于将其隐藏在某个地方)。

    【讨论】:

      【解决方案3】:

      解决方法很简单: 启用视觉样式;将清单添加到您的应用程序和 VB IDE。

      在 Vista 及更高版本中,将清单添加到 VB IDE 有点棘手。请按照此处的说明进行操作: http://vbnet.mvps.org/index.html?code/forms/vbidevista.htm

      然后,将清单添加到您的应用程序。 这也将使您能够使您的应用程序以提升的方式启动(启动时具有管理员访问权限): 第 1 步:创建清单文本文件。 有 2 个选项:普通清单文件和需要管理员权限的清单文件。

      清单文件: (下载链接在文末)

      清单管理文件: (下载链接在文末)

      创建清单文件后,将其添加到您的项目中:

      打开资源编辑器,然后单击“添加自定义资源...”(问号旁边的按钮)。 选择您的清单文件并将其添加到编辑器中。 现在,双击新添加的资源,编辑它的属性。 设置这些值:

      类型:#24

      ID:1

      现在,这是最后也是最重要的一步:

      将您的项目设置为从 Sub Main 开始。 在 Sub Main 中,首先要调用函数 InitCommonControls。 必须在加载任何表单、控件或其他对话框之前调用它!

      初始化通用控件: (下载链接在文末)

      就是这样! 您的 VB6 未完全更新并使用视觉样式。

      下载链接,如承诺: https://www.dropbox.com/sh/neyueoozv87k1qd/AACbID8_aC718LCjs12T16Oqa?dl=0

      【讨论】:

        猜你喜欢
        • 2015-09-25
        • 2013-08-25
        • 2013-09-28
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-04-28
        • 2014-04-09
        相关资源
        最近更新 更多