vb如何使得窗体在主窗体的最前面
我想MDI窗体的背景图随MDI窗体大小的变化而变化,于是就在网上找到一个方法,就是在MDI窗体中加入一个picturebox控件,然后又在picturebox控件中加入一...
我想MDI窗体的背景图随MDI窗体大小的变化而变化,于是就在网上找到一个方法,就是在MDI窗体中加入一个picturebox控件,然后又在picturebox控件中加入一个image控件,使得控件的大小随MDI窗体的变化而变化,但是问题来了,MDI中的子窗体全部都在picturebox的下面,请问有什么方法能把MDI中的子窗体显示在最前面啊。或者用什么方法使得背景图片随MDI窗体的变化而变化,又不影响子窗体的显示。
注意,全部注意,要是帮得了忙的,有加分,注意,是有加分的。 展开
注意,全部注意,要是帮得了忙的,有加分,注意,是有加分的。 展开
2个回答
展开全部
要想使MDI窗体的背景图随MDI窗体大小的变化而变化,无需用到Image控件,只需要一个隐藏的PictureBox控件作为中转站,先在该PictureBox控件中用PaintPicture方法把图片调整到窗口大小,再把图片信息传递给MDI窗体的Picture属性,这样得到的背景图就是真正的背景图,不会对MDI子窗体造成任何影响:
先在MDI窗体中放入一个PictureBox控件,注意属性要保持默认状态:
Private Sub MDIForm_Load()
Picture1.Align = 1
Picture1.BorderStyle = 0
Picture1.AutoRedraw = True
Picture1.Picture = LoadPicture("e:\tmp\cd3.gif") '这是背景图片,大小任意,自己改
'也可以在设计阶段先放入Picture1,那么上面这行就可删去。图片的空白部分不用管它
Picture1.Visible = False
End Sub
Private Sub MDIForm_Resize()
Picture1.Height = Me.ScaleHeight
Picture1.PaintPicture Picture1.Picture, 0, 0, Me.ScaleWidth, Picture1.Height '根据窗口尺寸重画图片
Set MDIForm1.Picture = Picture1.Image
End Sub
先在MDI窗体中放入一个PictureBox控件,注意属性要保持默认状态:
Private Sub MDIForm_Load()
Picture1.Align = 1
Picture1.BorderStyle = 0
Picture1.AutoRedraw = True
Picture1.Picture = LoadPicture("e:\tmp\cd3.gif") '这是背景图片,大小任意,自己改
'也可以在设计阶段先放入Picture1,那么上面这行就可删去。图片的空白部分不用管它
Picture1.Visible = False
End Sub
Private Sub MDIForm_Resize()
Picture1.Height = Me.ScaleHeight
Picture1.PaintPicture Picture1.Picture, 0, 0, Me.ScaleWidth, Picture1.Height '根据窗口尺寸重画图片
Set MDIForm1.Picture = Picture1.Image
End Sub
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询