想在MDI窗体里面制作一个侧边栏,仿照网上例子用了一个子窗体实现Private Sub MDIForm_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
If X < 10 Then
load Form侧边栏
……
Else
……
End If
End Sub做好了侧边栏而且也运行成功,但现在问题是,我想在mdi窗体里面再放一个子窗体--Form背景,Form背景一直显示于最底层且充满整个区域,Form背景里有一个IMAGE控件,里面存放图片且stretch = true,程序运行时控制IMAGE控件使得它与Form背景一样大,这样图片就可以不受分辨率影响一直全部显示。关键现在同时载入Form背景,Form侧边栏:要么能运行Form侧边栏,但是Form背景不能最大化
要么Form背景最大化显示,但是怎么都不出现Form侧边栏哪位大侠能帮帮小弟~~~感激不尽~~~~
If X < 10 Then
load Form侧边栏
……
Else
……
End If
End Sub做好了侧边栏而且也运行成功,但现在问题是,我想在mdi窗体里面再放一个子窗体--Form背景,Form背景一直显示于最底层且充满整个区域,Form背景里有一个IMAGE控件,里面存放图片且stretch = true,程序运行时控制IMAGE控件使得它与Form背景一样大,这样图片就可以不受分辨率影响一直全部显示。关键现在同时载入Form背景,Form侧边栏:要么能运行Form侧边栏,但是Form背景不能最大化
要么Form背景最大化显示,但是怎么都不出现Form侧边栏哪位大侠能帮帮小弟~~~感激不尽~~~~
解决方案 »
- acess用vb做程序的时候 怎么把一列(字段)的值一起付给一个数组呢?
- 老板要我解决这个问题啊!大家能不能给我提点意见啊
- 如何标识打印未打印???
- 在线结贴,有关Execute方法使用的问题.
- 关于VB实现多路广播(Multicast)的方案
- 求救
- 如何设置tooltiptext 出现的位置和字体大小?
- 一个最难的数学问题,虽然看是简单,实际上很难,有兴趣挑战你的大脑嘛?来看看吧!
- 我受不了msdn了,谁能告诉我有效的使用方法。
- 调试编译成执行文件均无问题,但打包后安装时出现问题!
- vb中的CHR函数与Delphi中的CHR函数返回的结果一样吗?
- "多步操作产生错误".不知道是什么原因!请指教!
Option Explicit
Private m_BackPicture As IPictureDispPrivate Sub Form_Load()
Set m_BackPicture = LoadPicture("...")
End SubPrivate Sub Form_Paint()
With MDIForm1
Me.PaintPicture m_BackPicture, -.Picture1.Width, 0, .ScaleWidth + .Picture1.Width, .ScaleHeight
End With
End SubPrivate Sub Form_Resize()
Form_Paint
End Sub
背景窗体无标题、最大化,它就会充满整个 MDI 的子窗体客户区;
PictureBox 在 MDIForm 上, align = left,是不会被子窗体覆盖的(你用 Spy++ 看看就知道它的窗口和 MDIClient 窗口是平级的);
注意一下背景图的画法:Me.PaintPicture 图是画在背景窗体上的,而 With MDIForm1 图片大小参考的是主窗体的大小,目的是无论侧边栏宽度如何变化,虽然背景窗体大小随之变化,却可以然图片看起来就像被侧边栏覆盖一样不产生缩放。