-1

所以我正在为学校制作一个项目,我的加载表格如下所示: http: //gyazo.com/90238893fbe27ff1ae0cae070e22b7c5

当您将鼠标悬停在任一图片框上时,它会增加大小(因此您知道自己在上面)。我使用了以下代码:

http://gyazo.com/97c957806dd9064ca834a0d40d8de944.png

现在,当尺寸发生变化时,它似乎只会从右下角增加尺寸。我怎样才能让它全部增加?

4

2 回答 2

1

为了使它看起来好像在各个方向上都增加了大小,您必须更改图片框的TopLeft属性并减小它们。这会将它们移向左上角。如果你同时增加尺寸,它看起来像图片框被放大了。

于 2013-11-10T22:38:15.430 回答
0

获取 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
于 2013-11-11T01:18:28.293 回答