在运行时添加图标

本文关键字:图标 添加 运行时 | 更新日期: 2023-09-27 18:01:07

我有一个gui。我正在用程序点击按钮从原始表单创建一个新表单。

Form frm1 = new Form();
frm1.ShowDialog();

我还想添加图标到这个表单(除了默认(。我看了一下主窗体是如何添加图标的,我发现了

this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));

我如何对新表单执行同样的操作?我应该将新图标放在哪个目录中?(从我上面发布的主表单的自动生成代码中看不清楚(

在运行时添加图标

这里有两个选项

1( 如果你有一个扩展名为.ico的文件,你可以使用Icon的类构造函数加载它

string pathToIconFile = ...
this.Icon = new Icon(pathToIconFile);

2( 您可以在Properties项目文件夹中创建图标资源。打开Properties后,单击Resources.resx,然后出现Add Resource(添加资源(->Add New Icon(添加新图标(菜单项。这将创建一个图标。您还可以将现有文件中的图标加载到资源中,在这种情况下,图标将内置在可执行文件中。与选项1的区别在于,您不需要将图标文件与可执行文件一起分发,以便在运行时加载(记住pathToIconFile(因此,当你的图标作为资源添加时,它会被赋予一些名称。如果是myIconResource,你可以这样设置表单的图标:

this.Icon = Properties.Resource.myIconResource;