改变菜单栏的高度(分两种情况:1种是菜单的高度也随之变化,另1种是菜单的高度不变化)
改变菜单栏上菜单的长度给出代码,自绘的也可以,或者是封装了这些函数的菜单类的链接也凑合

解决方案 »

  1.   

    http://topic.csdn.net/t/20051211/19/4452323.html
      

  2.   

    MeasureItem改变的是菜单子项的吧?
    我需要的是改变菜单栏上的菜单项的尺寸
      

  3.   

    问题解决了一点
    void CShapeDialogBar::SetPos(LPCRECT lpRect)
    {
    DWORD dwMode;
    dwMode=~( LM_VERTDOCK | LM_HORZDOCK | LM_STRETCH | LM_MRUWIDTH | LENGTHY );

    CalcDynamicLayout(lpRect->right-lpRect->left,dwMode);
             CalcDynamicLayout(lpRect->bottom-lpRect->top,LM_LENGTHY);
    }这样可以改变dialogBar的Height和Width,
    但怎样改变dialogBar的Rect的rect.left和rect.top,
    希望高手指点
    最好能够使用MoveWindow和SetWindowPos来解决全部问题(我试过了,这两函数就算在Float状态
    下也没用,也许是我漏了消息没写)
      

  4.   

    sorry,发错帖子,见谅,^_^,楼下继续,多发高见,越详细越好,偶是新人啊
      

  5.   

    自绘吧
    http://www.vckbase.com/document/viewdoc/?id=1200
      

  6.   

    自绘的话是重载哪个函数来实现这个功能?
    DrawItem还是MeasureItem
      

  7.   

    晕,不过我觉得应该重改MFC的源码就可以,或者继承后重载想要改的函数
    只是我不知道MFC写菜单栏用的函数是什么,在哪里可以找到?
      

  8.   

    算了,谁有基于dialogBar的menuBar代码?寄送给我或者给个链接?
    还有就是用按钮和弹出菜单来模拟主菜单的代码?
    项目催得紧,不想从头写了
      

  9.   

    http://blog.csdn.net/goodboyws/archive/2005/10.aspx