【问题标题】:How do I set the icon for my application in visual studio 2008?如何在 Visual Studio 2008 中为我的应用程序设置图标?
【发布时间】:2010-09-24 03:44:21
【问题描述】:

如何在 Visual Studio 2008 中为我的 C++ 应用程序设置可执行图标?

【问题讨论】:

  • 评论中的链接现在失效了

标签: c++ visual-studio visual-studio-2008 icons


【解决方案1】:

这就是您在 Visual Studio 2010 中的操作方式。

因为它很挑剔,实际上这可能会很痛苦,因为您正在尝试做一些非常简单的事情,但这并不简单,而且 Visual Studio 没有很多陷阱不告诉你。如果您在任何时候感到生气或想要咬牙切齿地咬牙切齿并尖叫,请务必这样做。

陷阱:

  • 您需要use an .ico file您不能为可执行文件的图标使用 PNG 图像文件,它不起作用。您必须使用 .ico。 There are web utilities 将图像转换为 .ico 文件。
  • 用于您的 exe 的 ico 将是具有最低资源 ID 的 ico。为了改变.ico

1) 打开 VIEW > RESOURCE VIEW(在 VIEW 菜单的中间),或按 Ctrl+Shift+E 让它出现。

2) 在资源视图中,右键单击项目名称并说 ADD > RESOURCE...

3) 假设您已经自己生成了一个 .ico 文件,请从出现的废话列表中选择 Icon,然后点击 IMPORT

4) 在此对话框中*.ico 文件未列出,并且您不能使用常规 PNG 或 JPG 图像作为图标,因此将文件过滤器更改为 @ 987654324@ 使用下拉菜单。误导性的用户界面,我知道,我知道。

5) 如果您现在编译您的项目,它会自动将 .ico 具有最低 ID(如 resource.h 中所列)作为您的图标.exe 文件。

6) 如果您出于某种原因将一堆 ICO 文件加载到项目中,请确保您希望 Visual Studio 使用的 .ico 在resource.h 中具有最低 id。您可以毫无问题地手动编辑此文件

例如。

//resource.h
#define IDI_ICON1                       102
#define IDI_ICON2                       103

使用了IDI_ICON1

//resource.h
#define IDI_ICON1                       106
#define IDI_ICON2                       103

现在使用 IDI_ICON2。

【讨论】:

  • +1,即使只是为了 2 比 4 的笑话。这让我大笑:))
  • 有没有办法选择 ico文件来使用(例如:使用#ifdef),而不是将要使用的ico文件的资源ID更改为最低?
  • +1 仅用于be sure the .ico you want Visual Studio to use has the lowest id in resource.h(Windows shell - 通常是资源管理器 - 将使用具有最低 ID 或名称的图标作为默认图标。
  • 在我的 VS2010 中,资源视图位于 View 菜单中,位于 Other Windows 下。在Solution Explorer 中,右键单击Resources 也可以找到添加图标文件的选项。
【解决方案2】:

首先进入资源视图(从菜单:视图 --> 其他窗口 --> 资源视图)。然后在资源视图中浏览资源(如果有)。如果已经有 Visual Studio 添加的 Icon 类型的资源,则打开并编辑它。否则右键单击并选择添加资源,然后添加一个新图标。

使用嵌入式图像编辑器来编辑现有或新图标。请注意,一个图标可以包括从图像菜单中选择的多种类型(大小)。

然后编译你的项目,看看效果。

见:http://social.microsoft.com/Forums/en-US/vcgeneral/thread/87614e26-075c-4d5d-a45a-f462c79ab0a0

【讨论】:

  • 太棒了!我也可以使用 Visual Studio 2010 完成这些步骤... :)
【解决方案3】:

重要的是你想要显示为应用程序图标的图标(在标题栏和任务栏中)必须是资源脚本文件中的第一个图标

该文件位于 res 文件夹中,名为 (applicationName).rc

/////////////////////////////////////////////////////////////////////////////
//
// Icon
//

// Icon with lowest ID value placed first to ensure application icon
// remains consistent on all systems.
(icon ID )          ICON                    "res\\filename.ico"

【讨论】:

  • 这只是对程序文件的外壳图标​​的要求,即资源管理器中显示的那个。实际的窗口图标可以通过编程方式设置为任何图标,尽管默认是第一个。
  • 使用 IDI_MAIN_ICON 作为图标 id 似乎有效。如果我只是选择一个随机数,我就会遇到问题。就像:IDI_MAIN_ICON ICON "icon.ico"
【解决方案4】:

您按照 bobobobo 所说的在资源中添加 .ico,然后在主对话框的构造函数中进行修改:

m_hIcon = AfxGetApp()->LoadIcon(ICON_ID_FROM_RESOURCE.H);

【讨论】:

    【解决方案5】:

    如果您使用的是 .NET,请在解决方案资源管理器中右键单击您的程序并选择属性。在资源部分下选择图标和清单,然后浏览到图标的位置。

    【讨论】:

    • 这是指 .Net 应用程序,而不是普通的 c++ 应用程序。
    【解决方案6】:

    我不知道 VS 2008 中的 VB.net 是否有任何不同,但以上都不适用于我。在解决方案资源管理器中双击 我的项目 会打开如下所示的窗口。选择左侧的 Application,然后使用组合框浏览您的图标。构建后,它应该会显示在您的 exe 文件中。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-04-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-01-20
      • 1970-01-01
      • 2015-11-20
      相关资源
      最近更新 更多