C# WinForm ——31 32 Menustrip菜单栏

1. 介绍

菜单控件,包含多个菜单项的菜单容器

主菜单下面可以有子菜单,子菜单下面可以有下一级子菜单

2. 常用属性

属性 解释
(Name) 控件ID,在代码里引用的时候会用到
Enabled 控件是否启用
Dock 定义要绑定到容器的控件边框,默认是top
ContextMenuStrip 当用户右击该控件时显示的快捷菜单
LayoutStyle 指定ToolStrip的布局方向: HorizontalStackWithOverFlow:水平方向布局,可以溢出 VerticalStackWithOverFlow:垂直方向布局,可以溢出 StackWithOverFlow: Flow: Table:表格样式显示
Items ToolStrip上显示的项的集合,菜单项的集合,添加项的时候,有三种类型可以选择:MenuItem(默认)、ComboBox、TextBox MenuItem里的每一个菜单项是ToolStripMenuItem类的,可以设置(Name)和Text属性、快捷键、每个菜单下面的子菜单,Text就是显示在菜单栏中的文字 当Text属性是"文件(F)",且快捷键的修饰符是 Alt 时,在键盘上按下快捷键,只是选中 当Text属性是"文件(&F)",且快捷键的修饰符是 Alt 时,在键盘上按下快捷键,会展开下拉菜单 设置每个菜单下面的子菜单集合(DropDownItems属性),每个子菜单也都是ToolStripMenuItem类的
TextDirection 菜单栏的文本绘制方向:Inherit、Horizontal(水平)、Vertical90(垂直90度)、Vertical270(垂直270度)
ShowIcon 指示是否显示图标,图标可以通过Image或ImageList属性来设置

3. 菜单项响应

  1. 手动添加"学生管理"菜单项,并添加"新增学生"子菜单项

  2. 手动添加"班级管理"菜单项,并添加"新增班级"子菜单项

  3. 手动添加"退出系统"菜单项

  4. 注册"退出系统"的单击事件

  5. 将FrmMenuStrip窗体的IsMidContainer属性设置为true,新建一个FrmAddStudent窗体和一个FrmAddClass窗体

  6. 注册 "新增学生" 子菜单的单击事件

    FrmAddStudent窗体可以在父容器中随意拖动,可以最大化、最小化,但移不出父容器

  7. 注册 "新增班级" 子菜单的单击事件

4. 代码添加菜单项及响应

班级管理菜单的添加 类似

参考:2023年C#之WinForm零基础教程50讲

相关推荐
周杰伦fans1 小时前
C#对话摘要降低Token消耗
人工智能·后端·c#
可乐鸡翅yeah_1 小时前
fmp4 碎片 MP4 格式 HLS 流,和传统 TS 分片有什么不一样
开发语言·javascript·ios·音视频·safari·m3u8·m3u8在线播放
流形填表1 小时前
多校区题库标准化:Excel模板与校验脚本
开发语言·python
步行cgn1 小时前
AOP 通知的类型详解
开发语言
weixin_307779131 小时前
从“人操作仪器”到“Agent 自主发现”:OPL 金属材料自驱动实验室 MVP 技术论述
开发语言·人工智能·算法·架构
笑鸿的学习笔记2 小时前
C++笔记之SIMD与SSE指令集
开发语言·c++·笔记
福兮说2 小时前
URL 编码的七个坑:c++ 传到后端变空格、%25 套娃、截断 emoji 直接报错
开发语言·前端·javascript·node.js·url
小的时候可菜了3 小时前
JS 异步的本质:从单线程到 thenable(一条进化链)
开发语言·前端·javascript
可乐鸡翅yeah_3 小时前
hls.js 配置 loadStartPosition,点播起始播放位置踩坑
开发语言·javascript·网络协议·ecmascript·m3u8在线
en.en..3 小时前
Linux 进程退出exit(函数)
java·开发语言·算法