MDI窗口中实现自动缩放的背景图

本来想用mdiform.picture.render方法,但最后一下参数怎么也搞不清,于是想了个变通办法,发现这样实现其实更加方便,很多其它没办法实现的东西也可以实现了。

原理是创建一个新的专门用来作背景的窗体,将其caption 清空,controlbox设为false,mdichild设为true。然后在代码 窗口中写入:

Option   Explicit

Dim  pp

Private   Sub  Form_Activate()
Dim  o  As  Form
If  Forms.Count  >=   3   Then
    Forms(Forms.Count 
-   1 ).SetFocus
End   If
End Sub

Private   Sub  Form_Load()
Set  pp  =   LoadPicture (App.Path  &   "/r esource/back.jpg " )
Me.Move 
0 0 , MdiMain.ScaleWidth, MdiMain.ScaleHeight
End Sub

Private   Sub  Form_Resize()
Pic1.Move 
0 0 , Me.ScaleWidth, Me.ScaleHeight
Pic1.PaintPicture pp, 
0 0 , Pic1.Width, Pic1.Height
End Sub

pic1是我创建的一个pictruebox,mdi主窗口名称为 mdimain。

Sub Form_Activate()过程保证了该窗口永不被激活,以免挡住其它窗口。而再没有其它窗口显示时,此窗口又可以正常使用上面的控件。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值