我建了个MDI窗体,名为frmMain,做为项目的主窗体,其它的窗体均为MDI子窗体。由于大部分非容嚣控件不能画到MDI窗体上,所以我画了个PICTURE控件,左对齐
准备在这个PICTURE控件内部放一个类似于QQ的工具栏,上面放一些快捷功能键。现在的问题是,如何使MDI窗体改变大小时,比如最大化,恢复时,改变QQ工具栏控件的大小,使之适应PICTURE控件的大小在Form_Resize事件里调整QQ工具栏控件大小,总是不对劲,差一步。

解决方案 »

  1.   

    把你resize中的代码贴出来才好回答呀
      

  2.   

    List1为Picture1中的控件,目的为窗体的大小改变后维护List1的大小和Picture1一样
    Picture1的宽度固定,高度随窗体自动变化
    Private Sub MDIForm_Resize()
        List1.Move 0, 0, Picture1.Width, Picture1.Height
    End SubList1的宽度在上面的代码没问题,高度就有问题了,利用断点查看Picture1.Height总是上次变化的值,一会大,一会小
      

  3.   

    在Form_Resize事件里调整QQ工具栏控件大小,总是不对劲,差一步。
    -----------
    是什么意思?
    ---------
    www.vicmiao.com
    努力就有美好时光!
      

  4.   

    就是List1的高度一会超出Picture1高度,一会小于Picture1的高度,总之,高度就是不能适应,大哥们自己试一下就知道了。
      

  5.   

    这个很正常啊,因为ListBox控件的高度是跟其字体大小等属性相关联的,VB会为了适应字体而自动调整ListBox的高度值到一个最接近于你设置的值的值,不知道我说清楚了没有?
      

  6.   

    Private Sub Picture1_Resize()
        List1.Move 0, 0, Picture1.scaleWidth, Picture1.scaleHeight
    End Sub