2011-05-16 79 views
1

我对Windows窗体(vb.net)没有经验,而且我有一个相当愚蠢的问题。PictureBox控件的图像位置(代码)

我打开了某人的一个旧项目,并且窗体上有一个PictureBox控件。 PictureBox有一张照片,我正试图在计算机上找到照片的位置,但找不到它。

在ASPX中,我只能看后面的代码并找出标签指向的位置(对于照片)。

有没有办法做到这一点的vb.net?

更新: 存在于我的对象的唯一代码,与图像属性是这样的:

Me.pbTotal.Image = CType(resources.GetObject("pbTotal.Image"), System.Drawing.Image). 

回答

0

好吧,我刚刚找到了真正的答案。是的,它在资源文件中,但不是项目本身。我不知道表单本身也有资源文件(.resx)。

在visual studio 2010(不知道其他人),隐藏.resx文件。如果您在解决方案资源管理器工具栏中单击“显示所有文件”选项,您将看到可以钻取表单。在.resx文件中,我能够找到我的图像。

2

您可以右击该图片框 - >属性 - >和应该具有像场您搜索的信息

+0

图像属性只是说System.Drawing.Bitmap。在它下面,它只是关于图像本身的细节,即水平分辨率,物理尺寸,像素格式,原始格式,尺寸,标签和垂直分辨率。如果我点击'...'按钮,它只是让我选择导入一张新照片,没有关于当前照片的详细信息。 – Kukoy 2011-05-16 13:20:11

+0

Okey看看你的项目设置 - >资源 - >更改为图片,它们应该是 – SwissGuy 2011-05-16 13:45:59

+0

我刚刚尝试过,以及...照片不被用作资源。我可以在哪里查看?是否没有显示位置的代码? – Kukoy 2011-05-16 14:16:14

1

如果未在属性窗口中设置,可以通过右键单击图片框来查看它,它将使用image属性在代码中进行设置。

+0

我的对象,与图像属性存在唯一的代码是这样的,Me.pbTotal.Image = CType(resources.GetObject(“pbTotal.Image”),System.Drawing.Image)。我现在应该看什么? – Kukoy 2011-05-16 13:27:48

+0

其项目资源请看以上评论 – rerun 2011-05-16 19:10:00

0

PictureBox控件为您提供了两个选项,用于设置显示在其上的图像。您可以使用ImageLocation属性或Image属性执行相同的任务。

如果将ImageLocation设置为有效图像/图片的文件名或URL,则图像会显示出来,您也可以通过Image属性访问它。如果您应该使用Image属性来设置显示的图像,如果您事先不知道该图像,将无法知道正在显示的图像的物理位置。

从您粘贴到您的问题的代码,没有办法检索图像文件的路径/ URL。更复杂的是,图像是从你的项目资源中加载的,因此任何解决路径/ URL的尝试都必须在定位原始文件之前首先浏览项目资源,即使这是可能的,但出于所有实际目的太麻烦了。

简而言之,如果您希望稍后获取图片框中加载的图像的路径/ url,请使用ImageLocation属性而不是Image属性来设置要显示的图像。

+0

感谢您的回答。这是一个坏消息,但至少我不会浪费更多时间寻找某种神奇的URL来将我引向位置大声笑。 – Kukoy 2011-05-16 15:15:11