效果:http://www.fantasiasoft.net/Zyl910/zMenuBar.gif
下载:http://www.fantasiasoft.net/Zyl910/zMenuBar.zipzyl910菜单栏控件(能实现像IE那样的在ReBar(CoolBar)中的菜单栏效果)
作者:zyl910
特点:
该控件会自动读取VB菜单编辑器的菜单,不需要修改你的工程中的任何代码。而且大部分功能是属性,可以直接在属性窗口设置,非常方便。
功能:
1.支持无边框窗口。这样可以实现Skin窗口
2.支持MDI窗口。同时提供了MDIControl属性设置是否显示MDI子窗口控制元素
3.当菜单项目过多时会出现“>>”符号
4.提供BackColor、ForeColor、Font、HotBkC、HotLineStyle、HotTextC等属性,这样能更好的控制界面效果。同时提供SetWinXPStyle、SetWin98Style方法,模拟WinXP、Win98风格的菜单栏
5.能够设置背景位图。同时提供背景图校准功能,这样能模拟透明
6.允许用户自己绘制背景,这样能做到完美的模拟透明效果
7.附送TileBlt、TilePicture函数,用于绘制平铺的图像
8.提供OnMenuSelect事件(因为VB没有这个事件,而MenuSelect功能很常用)
9.其他零碎功能,如AutoSize属性、OnContextMenu事件……
=======================================================
这是我第一次写控件
所以有些地方不是很明白:可以到哪些网站发布控件?

解决方案 »

  1.   

    VB的ToolBar封装得太弱智
    无法实现完美的鼠标、键盘导航功能
      

  2.   

    可能还需要这个:http://www.fantasiasoft.net/Zyl910/ZSubClass.zip
    专门用来处理SubClass操作的ActiveX DLL
      

  3.   

    注册:
    regsvr32 zMenuBarCtl.ocx
      

  4.   

    注册:
    regsvr32 zMenuBarCtl.ocx
      

  5.   

    有点问题:这个控件的功能之一就是在使用系统菜单控件时仍可“支持无边框窗口。这样可以实现Skin窗口”
    但是,菜单栏的主体没有变,还是系统风格,更重要的是,如果试图使用第三方控件改变系统菜单外观也会失败。例如袁飞的.NET菜单控件等等。这可能是两者在自绘菜单时有冲突。能否找到一个与之兼容的可改变系统菜单主体外观的空间呢?或者干脆添加这么一个功能——连系统菜单也一并XP化(或平面化),这样用这个控件制作Skin窗口就简单、完美到极点了。
      

  6.   

    老大,有bug阿,删除数字的时候屏幕会有闪动,这里不太好吧!!!!我知道要刷新窗体,可是能不能想办法克服这个缺点呢??