2011-06-15 33 views
1

我正在使用vb.net并希望在光标位于该图片上时增加图片的大小,但当光标离开图像区域时,图像应该回到其原始大小。我增加了图片框中的图片大小,但现在我想将其恢复到原始大小

我用下面的代码来提高图像的大小:

Private Sub PictureBox1_MouseHover(ByVal sender As Object, ByVal e As System.EventArgs) Handles PictureBox1.MouseHover 
    PictureBox1.Size = New Size(300, 250) 
End Sub 

我使用缺省大小类,但它提供了一些不同的尺寸。

请引导我将图像转换为原始大小的代码,这些代码已被声明为图片框属性。

回答

2

您应该可能挂钩了MouseEnterMouseLeave事件。为MSDN参考

+0

(链接没有来过。) – 2011-06-15 02:43:23

+0

固定的,谢谢 – kaveman 2011-06-15 02:44:37

2

下面链接的,将调整在PictureBox到图像的尺寸代码:

PictureBox1.Size = PictureBox1.Image.Size 

假设图片框的原始尺寸是图像尺寸,那么会工作得很好。

由于kaveman建议,以及的MouseEnter鼠标离开会好得多事件将代码放在;-)

为了恢复你已经将它设置为自定义尺寸,你需要像这样的代码(请确保它的地方,不会超出范围,像的形式,方法外)

你需要一个变量来存储原始尺寸:

Dim OriginalSize as Size 

然后,前当用户将鼠标移动到图像上时更改大小,存储s IZE在变量:(把这种在MouseEnter事件)

OriginalSize = PictureBox1.Size 
PictureBox1.Size = New Size(300, 250) 

恢复该尺寸是把这个变量返回到图片框大小的一个简单的问题:(这正好在MouseLeave事件)

PictureBox1.Size = OriginalSize 

=)

+0

非常感谢您的宝贵回应。但先生一个查询仍在点击我的脑海,我想重新大小的图像成已声明的大小d放入该图像的大小属性中。请指导我将代码带回到声明为属性窗口的大小的图像。谢谢 – Omkar 2011-06-16 02:42:57

+0

@Omkar:为了做到这一点,您需要将原始大小存储为全局或静态在更改图像的大小之前变量。然后,您可以使用该变量恢复原始大小=) – 2011-06-16 04:10:03

+0

@Omkar:我在上面的答案中添加了更多代码,我希望这就是您要找的内容? – 2011-06-16 04:23:09

相关问题