2010-06-15 47 views
1

我正在使用VB.NET(2008)中的资源来管理我的文件,并且有3个图标文件需要位于我的表单上的3个按钮上(单击按钮更改表格的TOT按下的按钮图标)Visual Basic my.resources图标文件作为按钮上的图像

ICO_1.ico

ICO_2.ico

ICO_3.ico

但是当我尝试下面的代码,我得到的错误“的价值类型system.drawing.icon不能转换为system.drawing.image“任何想法是什么NG?

btnIcon1.image = my.resources.ICO_1

btnIcon2.image = my.resources.ICO_2

回答

2

正是它说,一个按钮想要一个位图,而不是图标。您可以使用Icon.ToBitmap(),但生成的位图通常看起来很糟糕。使用一个好的图像编辑器来获得更好的结果,Visual Studio有一个。将生成的位图添加到资源中。

2

要添加到Hans的回复中,我发现在My.Resources中为项目使用所有.bmp文件效果最好,只需使用小函数将位图转换为图标即可使用,例如,作为WinForm上的图标:

Public Shared Function ConvertBitmapToIcon(ByVal resourceBitmap As Bitmap) As Icon 
    Return Icon.FromHandle(resourceBitmap.GetHicon()) 
End Function 

我只需要一个实际的.ico文件就是编译后的.exe图标。