问题描述
|
我正在使用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
我使用了默认的大小类,但是它提供了一些不同的尺寸。
请通过将图片带入图片框属性中声明的原始尺寸的代码引导我。
解决方法
您可能应该关注
MouseEnter
和MouseLeave
事件。 MSDN参考链接
, 这是将PictureBox调整为图像尺寸的代码:
PictureBox1.Size = PictureBox1.Image.Size
假设PictureBox的原始大小是图像大小,那么就可以了。
正如kaveman所建议的,将代码放入;-)中,MouseEnter和MouseLeave是更好的方法。
为了恢复您已设置的自定义大小,您将需要以下代码:(确保其大小不会超出范围,例如形式,方法之外)
您将需要一个变量来存储原始大小:
Dim OriginalSize as Size
然后,在用户将鼠标移到图像上时更改大小之前,请将大小存储在变量中:(将其放入MouseEnter
事件中)
OriginalSize = PictureBox1.Size
PictureBox1.Size = New Size(300,250)
恢复该大小很简单,只需将该变量放回图片框大小即可:(这发生在MouseLeave
事件中)
PictureBox1.Size = OriginalSize
=)