在VB中如何实现MDI窗体的背景图随窗口的大小而变化
1个回答
展开全部
简单一点的方式是,在MDI主窗体内添加一个picturebox控件,然后在这个picturebox中添加一个image控件。
Picture1的属性:
1.Align=top
2.Appearance=flat
3.BordeStyle=None
4.TabStop=false
Image1的属性:
1.Stretch=true
在MDI窗体的resize事件中添加如下代码:
Private Sub MDIForm_Resize()
Me.Picture1.Height = Me.Height
End Sub
在Picture1控件的resize事件中添加如下代码:
Private Sub Picture1_Resize()
Me.Image1.Move 0, 0, Me.Picture1.Width, Me.Picture1.Height
End Sub
上面的代码是比较粗略的代码,至于在resize的时候picture1和image1的宽和高的精确数值可以自己调试,以便图像显示的最为完整和精确。
这个方法的缺点是,由于窗体大小可以随意调节,所以背景图形可能会变形。当然也可以考虑控制窗体大小的变化,使窗体按照图片的纵横比放大和缩小,但是相应的控制代码会增加一些。
Picture1的属性:
1.Align=top
2.Appearance=flat
3.BordeStyle=None
4.TabStop=false
Image1的属性:
1.Stretch=true
在MDI窗体的resize事件中添加如下代码:
Private Sub MDIForm_Resize()
Me.Picture1.Height = Me.Height
End Sub
在Picture1控件的resize事件中添加如下代码:
Private Sub Picture1_Resize()
Me.Image1.Move 0, 0, Me.Picture1.Width, Me.Picture1.Height
End Sub
上面的代码是比较粗略的代码,至于在resize的时候picture1和image1的宽和高的精确数值可以自己调试,以便图像显示的最为完整和精确。
这个方法的缺点是,由于窗体大小可以随意调节,所以背景图形可能会变形。当然也可以考虑控制窗体大小的变化,使窗体按照图片的纵横比放大和缩小,但是相应的控制代码会增加一些。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询