21

我想更改我的软件任务栏上的图标,所以我更改了项目设置。此路径是由 Visual Studio 本身建议的

图标的路径

但是我的任务栏仍然显示与以前相同的图标(标准图标) - 在我的资源管理器中,.exe 具有正确的图标,它不会在任务栏中更改。

我也尝试结束 explorer.exe 并重新启动任务,但这根本没有帮助。我还尝试将分辨率设置为 16x16 和 32x32,但两者都不起作用。

4

6 回答 6

50

您还需要为您的表单提供该图标。应用程序图标是嵌入在应用程序中并显示在资源管理器或快捷方式中的图标。不过,每个表单都可以有自己的图标。

于 2013-03-06T11:47:42.483 回答
14

我注意到 Windows 7 和 Windows 8 的一些事情。Windows 任务栏图标取自程序快捷方式的图标,而不是应用程序图标。

如果您通过 Visual Studio 为您的应用程序分配一个图标,它将设置一个显示在表单和通知区域中的图标。但是,您创建的任务栏图标和任何快捷方式都不会像以前那样从应用程序中获取图标,而是使用默认快捷方式图标创建它们。

所以我发现我必须将快捷方式图标(位于开始菜单中)设置为应用程序安装程序的一部分。

对于 Windows XP,我不必这样做。

于 2013-03-06T12:02:06.680 回答
6

1 - 将文件(例如 Address_Book.ico)添加到资源部分

2 - 在您的代码中添加后续行

   public Form1()
   {
       ....
       this.Icon = Properties.Resources.Address_Book;
   }

3 - 它有效。

于 2017-05-29T09:19:37.333 回答
5

通过代码设置Form.Icon 属性还考虑以下建议MSDN

表单的图标指定在任务栏中代表表单的图片以及为表单的控制框显示的图标。FormBorderStyle如果设置为 ,此属性将无效FixedDialog。在这种情况下,表单将不会显示图标。

于 2013-03-06T11:51:10.173 回答
1

您将需要使用工具箱中的 notifyicon 组件。请按照以下说明进行操作。

带有 Windows 窗体 NotifyIcon 组件的任务栏

于 2018-01-22T13:28:41.230 回答
0

项目属性中设置的图标是可执行文件的图标,而不是任务栏中的图标,任务栏中的图标是当前表单中的图标。

如果您有多个具有相同图标的表单,并且您使用 GUI 设置表单的图标,那么它将将该图标的多个实例添加到编译的可执行文件中,这将导致更大的编译可执行文件。

所以你应该把这个Icon = Properties.Resources.icon;放在每个表单的构造函数中来设置表单的图标。

至于图标大小,我不确定最大大小是多少,但我使用 128x128 图标文件。

于 2013-03-06T15:53:01.497 回答