VB中用第三方控件打造Office XP菜单

翻译|其它|编辑:郝浩|2005-09-19 09:56:00.000|阅读 1338 次

概述:

# 界面/图表报表/文档/IDE等千款热门软控件火热销售中 >>



  简介: VsMenu控件是一款完全可以模仿Office XP和Office 2003的风格菜单控件。

  使用示例

  OfficeXP的菜单界面大家都不陌生吧,你也许想在VB开发的程序中,也用上这种非常漂亮的菜单,但是也许为它付出惨重的代价,不是实现方法困难,就是需要写相当多代码,非常的不划算,现在笔者将为你介绍一款适应于所有Windows操作系统、并且全面支持MDI窗口和系统菜单、完全模拟MS OfficeXP及Office2003 风格的菜单控件,就是这样一款您已经找了很久的控件。她是目前所有主流开发工具下零代码轻松实现XP&2003菜单效果。这个示例中我们将使用VsMenu控件打造出一个很酷的OfficeXP菜单。

  VsMenu控件实现XP和2003效果的过程是不需要我们去关心的,所以它仅仅提供了少许的方法和属性,作为一款相当傻瓜的控件,对控件的设置都可以通过鼠标来完成,不过我们还是介绍一下控件常用的方法、属性和事件。见下表:
 

方法

说明

Init 初始化窗口
SetBitmapByCaption 设置菜单项图标
SetCustomAttributes 一次性设置菜单的有关各项属性


  VsMenu控件常用方法列表
 

属性 数据类型 说明
BitmapSize Long 设置菜单显示项的大小
DisplayShadow Boolean 设置菜单显示是否有阴影
DrawStyle UcsMenuStyle类型 设置菜单配色方案,是自定义还是默认
RightToLeft Boolean 反转菜单显示方向
UserCheckBackColour Variant 复选框颜色
UserCheckBorderColour Variant 复选框边框颜色
UserGradientOne OLE_COLOR 第一次渐变色
UserGradientTwo OLE_COLOR 第二次渐变色
UserMenuBorderColour OLE_COLOR 菜单边界颜色
UserSelectedItemForeColour OLE_COLOR 被选菜单文字颜色
UserSelectedMenuBackColour OLE_COLOR 被选菜单背景颜色
UserSelectedMenuBorderColour OLE_COLOR 被选菜单的边界颜色
UserSideBarColour OLE_COLOR 工具条颜色
UserTopMenuBackColour OLE_COLOR 主菜单背景颜色
UserTopMenuHotBorderColour OLE_COLOR 主菜单热点边界颜色
UserTopMenuHotColour OLE_COLOR 主菜单热点颜色
UserTopMenuSelectedColour OLE_COLOR 展开的主菜单背景颜色
UseSystemFont Boolean 是否使用系统字体

VsMenu控件常用属性列表

 

事件 说明
Highlight 移入菜单事件,与按钮的移入、移出事件类似
CustomDrawItemFont 菜单项自绘字体设置
CustomDrawItemHoverFont 当鼠标移入或用键盘选中某菜单项时该菜单项的自绘字体

VsMenu控件常用事件列表


  下面我们将介绍该控件的用法。

  第一步:首先启动Visual Basic 6.0,新建一个窗体,然后用工程中的菜单编辑器向窗体添加菜单

  第二步:加载VsMenu控件;在控件工具栏中单击右键,选择“部件”,在弹出的窗口中点击“浏览”,找到VsMenu控件,载入它;把它添加到窗体中任意位置即可,这个时候,你就会发现,窗体的菜单已经发生了变化,已经变成了OfficeXP风格的菜单了。

  你可以按F5键运行该程序查看程序运行效果了,下面我们将介绍如何更改该控件的一些设置。

  第三步:设置VsMenu控件。

  该控件的设置相当简单,它提供了一个属性页帮助开发者进行控件的设定。点中VsMenu控件,按下Shift+F4组合键便会弹出该控件的属性页,如下图:



  在该属性页内可以设置菜单项图标、样式以及菜单大小等等属性。在“自定义菜单颜色”的页内,提供了一套Office2003风格菜单的配色方案,可以通过设定“绘制样式”中的属性改变菜单样式,如下图所示,你也可以根据需要自己编写配色方案。




  在字体页内可以设置菜单中字体大小,这个功能需禁用“使用系统字体功能”

  第三步:在程序中动态设置VsMenu控件。

  我们可以通过控件提供的方法、属性和事件来控制它,下面我们就举几个简单的例子。


    ’设置菜单默认风格
   ctxVsMenu1.DrawStyle = MS_默认

   ’设置菜单自定义风格
   ctxVsMenu1.DrawStyle = MS_自定义


   ’设置菜单显示项的大小
   ctxVsMenu1.BitmapSize = 24

   Private Sub ctxVsMenu1_Highlight(strMenuCaption As String)
          If strMenuCaption = "新建(&N)" Then
            Msgbox "新建一个文档"
          End If
   End Sub

 


标签:

本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@evget.com


为你推荐

  • 推荐视频
  • 推荐活动
  • 推荐产品
  • 推荐文章
  • 慧都慧问
扫码咨询


添加微信 立即咨询

电话咨询

客服热线
023-68661681

TOP