2009-04-18 64 views
1

我需要使用对资源文件夹的引用来创建一个图像数组。使用项目资源的VB.NET图像数组

下面是我的代码不工作:

Dim imgPictures(8) As Image 
imgPictures(0) = Image.FromFile(My.Resources.cat_1.ToString) 

我如何引用坐在resouces文件夹此任务的图像?

干杯

+0

您有图像的资源,所以要动态获取的图像,还有,你可以在一个循环中使用的getImage方法。 图片img = My.Resource.GetImage(“ResourceKey_ ”); – Kirtan 2009-04-27 04:35:09

回答

0
Dim imgPictures(8) As Image 
imgPictures(0) = My.Resources.ResourceManager.GetString("myResourceName") 

...

' For assigning a resource to a image control based on your array 
' of strings use something like this: 

Me.picture1.Image = My.Resources.ResourceManager.GetObject(arr(i)) 
0

您可以使用它的方法My.Resource.GetString("ResourceKey{0}")

+0

我不明白在Image数组中的这个实现 – burntsugar 2009-04-27 02:24:47

0

在代码中引用资源的最简单方法是将其添加到项目资源中。

  • 右键单击该项目并选择属性
  • 选择资源选项卡
  • 更改组合框,图片
  • 选择从添加资源组合按钮,在“添加现有”图片
  • 选择您的图像

然后,您可以直接在代码中使用以下代码引用图像

Dim img = My.Resources.NameOfTheImage 
+0

我不明白在Image数组中的实现 – burntsugar 2009-04-27 02:24:16

0

我认为JaredPar是在正确的轨道上,但需要多一点的信息。

实质上,它的种类取决于资源的存储方式。 (如果你正在寻找获得资源的路径,你将最有可能不得不考虑反射。)


如果您的图片嵌入或内容可以直接引用它们:

- (右键单击Visual Studio中的图像>属性>生成操作=“内容”;也确保复制到输出目录=“始终复制”)

Dim imgPictures(8) As Image 
imgPictures(0) = My.Resources.NameOfImage1 
imgPictures(1) = My.Resources.NameOfImage2 
... 

如果您的图片只是一个文件夹中:

Dim imgPictures(8) As Image 
imgPictures(0) = Bitmap.FromFile(<filename1>) 
imgPictures(1) = Bitmap.FromFile(<filename2>) 
... 

斯科特