已阅读5页,还剩15页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第6章 窗体应用程序设计,王德俊 上海交通大学继续教育学院,第6章 窗体应用程序设计,6.1 概述6.2 组件的公共属性、事件和方法6.3 常用的控件6.4 常用的对话框6.5 消息对话框6.6 菜单和工具栏的设计,6.6 菜单和工具栏的设计,6.6.1 主菜单6.6.2 弹出式菜单6.6.3 工具栏,C#中菜单程序设计主要用到三个从Menu类继承的类: MenuStrip、MenuItem与ContextMenu,分别封装了对主菜单、菜单项及弹出式菜单的定义Menu类:是一个抽象类,是各种类型菜单的基类MenuStrip类:是窗体主菜单容器,用于产生一个窗体的主菜单对象MenuItem类:封装了菜单项中的各种成员,所有的菜单项都是由MenuItem对象构成的ContextMenu类:封装了对弹出式菜单各种特性及功能的定义,使用该类可以创建弹出式菜单,6.6 菜单和工具栏的设计,6.6.1 主菜单,主菜单用于在应用程序的顶部提供一个菜单栏,它是MenuItem对象的容器,由MenuItem对象组成菜单的结构1. 创建主菜单2. 创建菜单项(子菜单)3. 菜单项的事件和属性及其应用,6.6 菜单和工具栏的设计,6.6.1 主菜单,1. 创建主菜单,可以使用两种方法创建主菜单:使用MenuStrip类的构造函数实现主菜单的创建通过C#中的MenuStrip控件即菜单设计器实现菜单的创建(1) 添加主菜单双击MenuStrip控件,添加主菜单(2) 添加子菜单添加菜单项注意:子菜单项“-”描述为分隔符(3) 移动菜单项(4) 删除菜单项,1. 创建主菜单,通过设计器创建主菜单:从工具栏中将MenuStrip组件拖到窗体上,这时在窗体的顶部会出现一条淡淡蓝色的、空的主菜单栏,它实际上是菜单项(MenuItem对象)的容器;左下角出现MenuStrip对象的图标,如下图所示。,2. 创建菜单项(子菜单),通过设计器创建菜单项:(1)先选择窗体顶部的主菜单栏,这时在主菜单栏的最左边会出现“请在此键入”的编辑框,在此处输入相应的名称(如“文件(&F)”);(2)在出现的“请在此键入”的编辑框中,输入菜单名称(如“新建文件(&N)”,以此类推,创建其他菜单项,如“打开文件(&O)”、“保存文件(&S)”、“-”、“退出系统(&X)”等。(3)如果要添加菜单项的子菜单项,在输入该菜单项的名称以后,在其右边出现的“请在此键入”编辑框中输入子菜单项的名称;如图 :,3. 菜单项(MenuItem对象)的事件和属性及其应用,建立菜单后,往往要求菜单实现相应的事件处理功能,一般通过菜单项Click事件处理相应的功能,即通过单击菜单项实现程序功能的交互该事件在以下几种情况下发生:用户单击菜单项使用该菜单项相应的快捷键或访问键使用键盘选择该菜单项后按回车键,3. 菜单项(MenuItem对象)的事件和属性及其应用,弹出式菜单也称为上下文菜单ContextMenuStrip控件能够实现弹出式菜单的设计,其属性与主菜单基本相同,6.6 菜单和工具栏的设计,6.6.2 弹出式菜单,【例6.6】 创建窗体应用程序MyContextMenu,在窗体上添加一个RichTextBox控件,然后为该控件设计一个具有撤销、剪切、复制等常用编辑功能的弹出式菜单。通过右击richTextBox1控件可以利用弹出的弹出式菜单对被选中的文本进行剪切、复制、粘贴等编辑操作,运行效果如下:,6.6.2 弹出式菜单,6.6 菜单和工具栏的设计,该程序创建步骤如下:(1)创建窗体应用程序MyContextMenu,然后从工具箱中将RichTextBox控件和ContextMenuStrip组件拖到窗体上,并设计该弹出式菜单:,(2)将RichTextBox控件的ContextMenuStrip属性值设置为弹出式菜单对象的名称contextMenuStrip1。(3)在设计逐一双击各个菜单项,编写相应的事件处理代码,核心代码如下: private void 撤销ToolStripMenuItem_Click(object sender, EventArgs e) richTextBox1.Undo(); private void 剪切ToolStripMenuItem_Click(object sender, EventArgs e) richTextBox1.Cut(); ,private void 复制ToolStripMenuItem_Click (object sender, EventArgs e) richTextBox1.Copy(); private void 粘贴ToolStripMenuItem_Click (object sender, EventArgs e) richTextBox1.Paste(); private void 全选ToolStripMenuItem_Click (object sender, EventArgs e) richTextBox1.SelectAll(); private void Form1_Load (object sender, EventArgs e) 剪切ToolStripMenuItem.Enabled = false; 复制ToolStripMenuItem.Enabled = false; ,private void richTextBox1_SelectionChanged(object sender, EventArgs e) if (richTextBox1.SelectionLength = 0) 剪切ToolStripMenuItem.Enabled = false; 复制ToolStripMenuItem.Enabled = false; else 剪切ToolStripMenuItem.Enabled = true; 复制ToolStripMenuItem.Enabled = true; ,工具栏是Windows的标准特性,通过使用工具栏,能改善软件界面的布局,达到快速实现相应功能的目的,6.6.3 工具栏,6.6 菜单和工具栏的设计,工具栏的创建方法,(1)从工具箱中将ToolStrip控件拖到窗体上或双击ToolStrip控件ToolStrip的常用属性,工具栏的创建方法,(2) 在ToolStrip控件中添加工具按钮单击ToolStrip控件 的左边图标,可以在工具栏中添加按钮,单击按钮可以在其对应的属性栏内设
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 有机试剂工冲突管理强化考核试卷含答案
- 炼焦煤制备工岗前实操效果考核试卷含答案
- 陶瓷施釉工创新方法测试考核试卷含答案
- 生活垃圾收集工操作能力知识考核试卷含答案
- 绒线编织拼布工道德评优考核试卷含答案
- 建筑工地安全员请假条
- 2025年硅粉系列合作协议书
- 2025年ITO靶材项目发展计划
- 2025年悬挂式离子风机项目合作计划书
- 2026年智能美甲光疗机项目可行性研究报告
- 危险品押运证考试题及答案
- 心血管药物临床应用专家共识汇编
- 生产完成情况汇报
- 2025年初级(五级)健康照护师(五级)《理论知识》试卷真题(后附答案和解析)
- 杭州高一上期末数学试卷
- 2025年秋季学期国开电大本科《人文英语3》一平台机考真题及答案(002套)
- 2025年党建工作应试题库及答案
- 青年非遗传承人对传统技艺的创新与发展路径
- 2025年陕西省中考英语试卷(含解析)
- 药剂科进修工作汇报
- 2026届新高考语文热点复习:思辨性作文审题立意和谋篇布局
评论
0/150
提交评论