所以我正在为学校制作一个项目,我的加载表格如下所示: http: //gyazo.com/90238893fbe27ff1ae0cae070e22b7c5
当您将鼠标悬停在任一图片框上时,它会增加大小(因此您知道自己在上面)。我使用了以下代码:
http://gyazo.com/97c957806dd9064ca834a0d40d8de944.png
现在,当尺寸发生变化时,它似乎只会从右下角增加尺寸。我怎样才能让它全部增加?
所以我正在为学校制作一个项目,我的加载表格如下所示: http: //gyazo.com/90238893fbe27ff1ae0cae070e22b7c5
当您将鼠标悬停在任一图片框上时,它会增加大小(因此您知道自己在上面)。我使用了以下代码:
http://gyazo.com/97c957806dd9064ca834a0d40d8de944.png
现在,当尺寸发生变化时,它似乎只会从右下角增加尺寸。我怎样才能让它全部增加?
为了使它看起来好像在各个方向上都增加了大小,您必须更改图片框的Top
和Left
属性并减小它们。这会将它们移向左上角。如果你同时增加尺寸,它看起来像图片框被放大了。
获取 PictureBox 的 Bounds() 属性并使用它的 Inflate() 方法。将旧边界存储在 Tag() 中,以便您可以再次恢复它。就像是...
Private Sub PictureBoxClientBack_MouseEnter(sender As Object, e As System.EventArgs) Handles PictureBoxClientBack.MouseEnter
Dim rc As Rectangle = PictureBoxClientBack.Bounds
PictureBoxClientBack.Tag = rc
rc.Inflate(2, 2)
PictureBoxClientBack.Bounds = rc
rc = PictureBoxClientPic.Bounds
PictureBoxClientPic.Tag = rc
rc.Inflate(2, 2)
PictureBoxClientPic.Bounds = rc
End Sub
Private Sub PictureBoxClientBack_MouseLeave(sender As Object, e As System.EventArgs) Handles PictureBoxClientBack.MouseLeave
PictureBoxClientBack.Bounds = PictureBoxClientBack.Tag
PictureBoxClientPic.Bounds = PictureBoxClientPic.Tag
End Sub