winform入门篇 第13章 菜单栏
菜单栏
本章内容
菜单栏
工具栏
右键菜单
重点是右键菜单的实现。
菜单栏 MenuStrip,支持可视化编辑
添加 MenuStrip
添加菜单、菜单项、分隔线给菜单项设置属性
—Name 字段名,Text 文本显示,Image:图标
给菜单项添加事件处理(双击即可)
1.添加菜单栏
2.添加菜单项
直接输入文字即可
后边还能继续添加菜单
运行项目
3.添加属性
选择对应的菜单项,右键选择属性
Image 属性,表示前面显示的图标
4.添加事件
直接双击 菜单键 即可创建事件方法
默认添加Click 事件处理
5.添加图标
首先添加图片资源到Resource.resx中
右键选择,需要更换图标的菜单栏,选择Image 属性,添加图片
运行项目
此时,图标就已经显示在菜单栏前面
工具栏
工具栏 ToolStrip,主要用于显示工具按钮演示:。。
1.添加工具栏
2.添加控件
3.修改图标
添加资源文件到Resource.resx 中
右键选择属性,修改Image 属性
运行结果
要点与细节
1 工具栏的按钮代表一些常见的功能工具按钮和菜单项是对应的,应选择同一个回调
双击工具栏按钮,即可为其创建事件处理(建议先为控件创建一个规范的名字)
可以通过事件下拉列表,选择事件方法,为两个控件,同时绑定同一个方法处理
此处可以给菜单栏也绑定该方法
*右键菜单
右键菜单,ContextMenuStrip,即上下文菜单
例如,一个ListBox上右键点击时,显示上下文菜单
1 添加 ContextMenuStrip
在设计器里直接可视化编辑即可
编辑方式,和普通菜单栏是同样的
添加菜单项
此时运行,右键菜单并不会直接显示
给每个菜单项,修改合适的Name(规范命名)
编辑为 menuItem_Edit
删除为 menuItem_Del
2 给ListBox添加鼠标事件 MouseUp
void listBox1 MouseUp(sender, e), 或者void listBox1 MouseDown(sender, e)
3 弹出上下文菜单
contextMenuStrip1.Show(listBox1,e.Location);
运行结果,点击右键
4 区分上下文
作不同的处理
若点中了一项,则允许某些菜单(修改/删除)
若点中任何项,则禁用某些菜单(修改/删除)
需要达到效果,根据他所点击的内容,做出相应的处理(空白处点击不应该出现该菜单,应该在内容上点击才出现)
调用Listbox 的IndexFromPoint 获取指定坐标处的索引(为点中 返回-1)
运行结果
选中
未选中
也可以使用Visible = true/false 设置该右键菜单,显示与否
要点与细节
1根据鼠标点击的位置,判断点中了哪一项
int index = listBox1.IndexFromPoint(e.Location);
原文地址:https://blog.csdn.net/weixin_43847546/article/details/137874196
免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!