Your Ad Here
首页 | 编程语言 | 网站建设 | 游戏天堂 | 冲浪宝典 | 网络安全 | 操作系统 | 软件时空 | 硬件指南 | 病毒相关 | IT 认证
软讯网络 > 编程语言 > .NET > C#.NET > WinForm设计之菜单控制
【标  题】:WinForm设计之菜单控制
【关键字】:WinForm
【来  源】:http://blog.csdn.net/lzmtw/archive/2006/11/29/1420579.aspx

WinForm设计之菜单控制

Your Ad Here

Author:水如烟  

 这个你不一定用到它,但有时候会用到它。比如,应用插件的时候,或者按角色权限配置菜单的时候。

使用它是相当简单,首先设计好菜单,然后保存了一个文件。使用时主程序MainForm加载菜单文件,绑定事件,就OK了。

你可以在保存菜单时附加密码,主程序加载菜单时要求验证密码,这样来保证菜单文件的完整性。由于加密方法各有方法,所以在此我没有具体实现,只给出一个空函数。

代码比较多,用上了以前的树和自联表的有关类,也对它进行了充实。代码会贴在辅助类代码和应用类代码专题。

先看菜单设计的界面,是这样的:

默认菜单是存于一个文本文件嵌为资源,加载后,是这样的:

现在,只取几项菜单,更新后存到一个"Test.mnu"文件去。同时也复制事件代码到测试的MainForm去。

测试窗体MainForm代码:

Imports lzmtw.uSystem.uWindows.uForms

Public Class MainForm

    
Dim m As LzmTW.uSystem.uWindows.uForms.uMainForm.Menu.MenuManager

    
Private Sub MainForm_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        
Dim mMenuStrip As New MenuStrip
        
Me.Controls.Add(mMenuStrip)
        m 
= New LzmTW.uSystem.uWindows.uForms.uMainForm.Menu.MenuManager(mMenuStrip)

        
'读菜单文件
        m.ReadFile("Test.mnu")

        
'绑定默认的Click事件
        m.AddDefaultClickHandler()
    
End Sub

    
Protected Overridable Sub OnNewClick(ByVal sender As System.Object, ByVal e As System.EventArgs) ' New
        MsgBox("New")

    
End Sub

    
Protected Overridable Sub OnOpenClick(ByVal sender As System.Object, ByVal e As System.EventArgs) ' Open
        MsgBox("Open")

    
End Sub

    
Protected Overridable Sub OnCloseClick(ByVal sender As System.Object, ByVal e As System.EventArgs) ' Close
        MsgBox("Close")

    
End Sub

    
Protected Overridable Sub OnConfigClick(ByVal sender As System.Object, ByVal e As System.EventArgs) ' Config
        MsgBox("Config")

    
End Sub

    
Protected Overridable Sub OnAboutClick(ByVal sender As System.Object, ByVal e As System.EventArgs) ' About
        MsgBox("About")

    
End Sub

End Class

效果:

由于代码比较多,我分两天贴,要不,BLOG首页的全是我的链接了,会影响别人的情绪.

声明:【上一篇】
VB 实现 数据快速导入EXCEL:【下一篇】
【相关文章】
  • WinForm设计之UBindingNavigator
  • .net 2.0 webservice 异步调用在winform中的使用例子。
  • WinForm设计之ToolPanelTree
  • WinForm设计之状态栏
  • .NET改变WinForms的DataGrid.CurrentCell
  • 如何在C#的WinForm中制作饼状图和柱状图
  • WinForm中单个窗体实现P2P聊天程序(Socket,TcpListener,TcpClient,Thread,)
  • 使用 Flash 和 C# WinForm 配合打造界面漂亮的应用程序(摘要)
  • .Net 2.0 Winform部署和安装
  • Winform DataGird ,对最后一行MouseDown的Bug,郁闷
  • 【随机文章】
  • 这是一个测试
  • 节约成本之Excel打印技巧三则
  • 用Photoshop7制作一杯热茶
  • 网络维护专题
  • 磁盘阵列存储术语
  • 十进制与十六进制互换( C语言 )
  • 安裝及架設VPN-PPTP
  • 值得研究的PHP主流FrameWork框架
  • 删除整个链表的算法.
  • 用VC++实现Windows 2000/XP下的休眠
  • 【相关评论】
    没有相关评论
    【发表评论】
    姓名:
    邮件:
    随机码*
    评论*
          
    |  首 页  |  版权声明  |  联系我们   |  网站地图  |
    CopyRight © 2004-2007 bbb软讯网络 All Rigths Reserved.