文谷首页 | 业界传真 | 网络技术 | 服务器 | 数据库 | 存储技术 | 系统安全 | 无线技术 | Cisco | .Net | Windows | Linux | Unix | Java
电子商务 | 网站工程 | 网页设计 | 平面设计 | 多媒体 | 编程语言 | Oracle | MSSQL | Photoshop | ASP | PHP | 实用技巧 | 进程查询 | 文谷论坛
 websphere   .net framework
您现在的位置: IT文谷 >> 开发平台 >> .net framework >> VB.NET >> 文章正文


  9. 此时保存上述步骤,并单击快捷键F5,则得到图02所示界面:


图02:【Visual Basic .Net编程之DIY--自己画菜单】运行界面之一

[1] [2] [3] 下一页  

[1] [2] [3] 下一页  

Visual Basic .Net打造个性化菜单2006-7-15Visual Basic .Net打造个性化菜单2006-7-15Visual Basic .Net打造个性化菜单


Visual Basic .Net打造个性化菜单2006-7-15Visual Basic .Net打造个性化菜单2006-7-15Visual Basic .Net打造个性化菜单
Visual Basic .Net打造个性化菜单2006-7-15Visual Basic .Net打造个性化菜单2006-7-15Visual Basic .Net打造个性化菜单
Visual Basic .Net打造个性化菜单

Visual Basic .Net打造个性化菜单2006-7-15Visual Basic .Net打造个性化菜单2006-7-15Visual Basic .Net打造个性化菜单

  菜单(Menu)是程序界面的重要架构部件,自从有了可视化编程工具,使用其中的菜单编辑器就可以方便、快捷的编辑、设计菜单。但要想制作出个性化的菜单,哪怕对菜单项的任何改变,如:改变菜单的字体类型、大小等,只使用菜单编辑器是无法完成了。可视化编程工具Visual Studio .net也是如此。本文的主要内容就是介绍利用Visual Basic .Net手工绘制个性化菜单的实现方法。
 
  一.简介.Net Frame Work SDK 为在VB.Net绘制菜单提供的工具:

  .Net Frame Work SDK为Visual Basic .Net实现个性化菜单提供了许多工具。其中最重要是二个事件及其参数:DrawItem事件和其中的DrawItemEventArgs参数,MeasureItem事件和其中的MeasureItemEventArgs参数。

  1. DrawItem事件和其中的DrawItemEventArgs参数:

  DrawItem事件是当菜单项的OwnerDraw属性设置为True并且发出绘制菜单项的请求时才发生。个性化菜单制作的处理方法就是在此事件中完成的。在DrawItem事件处理程序中将接收一个 DrawItemEventArgs类型的参数,它包含与此事件相关的数据,这些数据对绘制菜单是很重要的。表01是DrawItemEventArgs类型参数提供特定于此事件的信息。

       属性          说明
       BackColor    获取所绘制的项的背景色。
       Bounds   获取表示所绘制项的边界的矩形。 
       Font          获取分配给所绘制项的字体。
       ForeColor    获取所绘制项的前景色。
       Graphics     获取要在其上绘制项的图形表面。
       Index    获取所绘制项的索引值。
       State         获取所绘制项的状态。

       表01:DrawItemEventArgs类型参数提供DrawItem事件特定的信息

  2. MeasureItem事件和其中的MeasureItemEventArgs参数:

  触发MeasureItem事件必须将菜单项的OwnerDraw属性设置为True,个性化菜单制作可通过此事件来获取、设定菜单项的大小等。MeasureItem事件处理程序中接收一个MeasureItemEventArgs类型的参数,此参数对获取、设定菜单项的大小是非常重要的。表02是MeasureItemEventArgs类型参数提供MeasureItem事件的特定信息。

       属性     说明
       Graphics   获取要测量的Graphics对象。
       Index     获取、设置需要有高度和宽度的项索引。
       ItemHeight  获取、设置由Index指定的项高度。
       ItemWidth  获取、设置由Index指定的项

     表02是MeasureItemEventArgs类型参数提供MeasureItem事件的特定信息

  二.本文介绍程序的设计、调试、运行的软件环境:

  (1).微软公司视窗2000服务器版

  (2).Visual Studio .Net正式版,.Net Framework SDK版本号3705

  三.循序渐进绘制自己的菜单:

  为了加深理解,我们用菜单编辑器设计一个简单的菜单,然后在此基础上加上个性化定制,重新绘制个性化的菜单。以下步骤就是利用Visual Studio的菜单编辑器制作一个简单的菜单:

  1. 启动Visual Studio .Net。

  2. 选择菜单【文件】|【新建】|【项目】后,弹出【新建项目】对话框。

  3. 将【项目类型】设置为【Visual Basic项目】。

  4. 将【模板】设置为【Windows应用程序】。

  5. 在【名称】文本框中输入【Visual Basic .Net编程之DIY--自己画菜单】。

  6. 在【位置】的文本框中输入【E:\VS.net项目】,然后单击【确定】按钮,这样在"E:\VS.NET项目"目录中就产生了名称为"Visual Basic .Net编程之DIY--自己画菜单"的文件夹,并在里面创建了名称为"Visual Basic .Net编程之DIY--自己画菜单"的项目文件。

  7. 把Visual Studio .Net的当前窗口切换到【Form1.vb(设计)】窗口,并从【工具箱】中的【Windows窗体组件】选项卡中往Form1窗体中拖入下列组件:一个MainMenu组件,名称为"MainMenu1"。

  8. 选中"MainMenu1"组件,单击鼠标右键,在弹出的菜单中选择"编辑菜单"。并按照图01所示界面设计菜单:


图01:【Visual Basic .Net编程之DIY--自己画菜单】项目设计界面之一
  • 上一篇文章:

  • 下一篇文章:
  • 进入论坛讨论

    相关文章
    基于.NET的多线程编程入门
    Microsoft .NET 框架资源基础
    VS2005常用插件搜罗
    .net中用GDI+提高gif图片保存画质
    VS.NET:通过Web服务瞄准电子商务
    对象设计中创建VS使用
    安装/初始化/个性化DotNetNuke
    介绍dotnet原动力(DNN)
    GDI+编程10个基本技巧
    DTE .NET工程的自动化编译
    .Net中如何操作IIS的原理分析
    VS.NETRC5无法创建Add-IN工程
    热门文章最新推荐

    版权与免责声明:
    ① 本网转载其他媒体稿件是为传播更多的信息,此类稿件不代表本网观点,版权归原作者所有,本网不承担此类稿件侵权行为的连带责任。
    ② 在本网BBS上发表言论者,文责自负。
    ③ 如您因版权等问题需要与本网联络,请在30日内联系 。
    Visual Basic .Net打造个性化菜单2006-7-15Visual Basic .Net打造个性化菜单2006-7-15Visual Basic .Net打造个性化菜单
    Visual Basic .Net打造个性化菜单2006-7-15Visual Basic .Net打造个性化菜单2006-7-15Visual Basic .Net打造个性化菜单

    .net framework专题
    人气排行
  • 此栏目下没有文章
  • 最近更新
    普通文章技术介绍 新数据网格简介
    普通文章.NET 开发人员该下载的十个必备
    普通文章深入剖析Asp.net资源文件
    普通文章通过事例学习.net的WebForms技
    普通文章ASP.NET Tips1---合并多个字段
    普通文章微软明年1月份出台.NET专业开发
    普通文章微软下月底前完成Vista大部分功
    普通文章揭开微软 .NET 认证考试的面纱
    普通文章Visual Studio:Microsoft开发工
    普通文章Visual Studio:Microsoft开发工
    全站热点       
    最新推荐
    关于文谷 | 联系文谷 | 免责声明 | 文谷社区
    Tel: 0577-65690019    E-mail: ichenjian@gmail.com    MSN:ichenjian@hotmail.com    QQ:2911194
    Copyright © 2004-2006 wengu.org 文谷 All Rights Reserved
    浙ICP备05000327号