第10章菜单、工具栏与状态栏课件

上传人:我*** 文档编号:140719369 上传时间:2020-08-01 格式:PPT 页数:35 大小:140.50KB
返回 下载 相关 举报
第10章菜单、工具栏与状态栏课件_第1页
第1页 / 共35页
第10章菜单、工具栏与状态栏课件_第2页
第2页 / 共35页
第10章菜单、工具栏与状态栏课件_第3页
第3页 / 共35页
第10章菜单、工具栏与状态栏课件_第4页
第4页 / 共35页
第10章菜单、工具栏与状态栏课件_第5页
第5页 / 共35页
点击查看更多>>
资源描述

《第10章菜单、工具栏与状态栏课件》由会员分享,可在线阅读,更多相关《第10章菜单、工具栏与状态栏课件(35页珍藏版)》请在金锄头文库上搜索。

1、,第10章 菜单、工具栏与状态栏 10.1 菜单 10.1.1主菜单的设计 1. 创建菜单的方法 可以使用两种方法创建主菜单:一种方法使用MainMenu类的构造函数实现主菜单的创建;一种简单的方法是通过C#中的MainMenu控件即菜单设计器实现菜单的创建。,(1) 添加主菜单 新建一个Windows应用程序,在工具箱中双击MainMenu控件或者用鼠标拖放到窗体上,则在窗体的顶部将添加一个菜单。如图10-1左图所示。,图10-1 在窗体中创建菜单,(2) 添加子菜单 在图10-1中,单击菜单中“请在此输入”,输入该菜单项的名称为的为“文件”,建立文件子菜单项;然后在该菜单项的下方显示一个标

2、注为“请在此输入”区域,一个位于该菜单项的右方显示标注为“请在此输入”区域,可以选择区域继续添加。 (3) 移动菜单项 选中要移动的菜单项,是用鼠标拖动到相应的位置即可。 (4) 删除菜单项 选中要删除的菜单项,单击右键,再弹出式菜单中选中“删除”即可删除该菜单项。,2. MenuItem对象的属性设计 3. 菜单事件 建立菜单后,往往要求菜单实现相应的事件处理功能,一般通过菜单项Click事件处理相应的功能,即通过单击菜单项实现程序功能的交互。该事件在以下几种情况下发生:单击菜单项、使用该菜单项相应的快捷键、使用键盘操作时按回车键。,10.1.2 弹出式菜单的设计 弹出式菜单也成为上下文菜单

3、,弹出式菜单能以更加灵活的方式为用户提供更加便利的操作,当用户在不同位置单击鼠标右键,则将显示一组不同的菜单项。 在C#中,使用工具箱中的ContextMenu控件很容易实现弹出式菜单的设计。方法为从工具箱中拖放一个ContextMenu控件到窗体上,设计相应的子菜单项。弹出式菜单控件需要和别的控件结合使用。其属性与主菜单基本相同。,10.1.3 菜单的使用 【例10-1】 创建一个类似于记事本菜单的窗体,如图10-2所示。 图10-2 菜单的设计,分析:本题中需要使用MainMenu控件实现主菜单的设计,ContextMenu控件实现弹出是菜单的设计。实现步骤如下: (1) 建立项目 (2)

4、 设计窗体 在窗体中添加一个MainMenu控件,即主菜单,用于在窗体的顶部显示菜单项;添加一个ContextMenu控件,用于程序运行中弹出式菜单的设计。并设计每个控件的属性。,10.2 工具栏的设计 工具栏是Windows的标准特性,通过使用工具栏,能改善软件界面的布局,达到快速实现相应功能的目的。一般情况下,工具栏可以实现与菜单相似的效果。在.NET的C#中使用ToolBar类实现工具栏的设计。,10.2.1 工具栏的创建方法 建立一个Windows应用程序,创建相应的程序。在指定的窗体上添加工具栏步骤如下: 在“工具箱”中双击ToolBar控件,在窗体的顶部显示一个放置toolBarB

5、utton的容器控件。并设计 toolBarButton的属性。, 在该控件中添加工具按钮。选中工具栏,在该属性中选择“行为”组,在“行为”组中选择Buttons属性,单击添加按钮,弹出如图10-2所示的集合编辑器。在集合编辑器中添加按钮并设置相应的属性。,图10-4 ToolBarButton集合编辑器,一般来讲,工具栏中的按钮往往与图像相结合,这种方法的实现需要与存放图像的ImageList控件相结合。首先应在窗体中添加“ImageList”控件,在控件中添加相应的图像。其次,设置工具栏的ImageList属性,在该属性的下拉框中选择ImageList控件,最后,打开ToolBarButt

6、on集合编辑器,设置ImageIndex为每个ToolBarButton按钮选择相应得图像即可。 给工具栏中的toolBarButton控件添加代码实现功能。,10.2.2 编写toolBar_ButtonClick事件 工具栏中按钮的事件不是通过具体按钮的单击实现的,是通过工具栏的单击事件实现的。通过单击事件中e.Button判断工具栏中按钮执行命令的情况。通过下例描述。 【例10-2】根据工具栏中的按钮改变标签中的文字,如图10-3所示。,图10-3 工具栏的使用,该题的工具栏单击事件的代码如下。 private void toolBar1_ButtonClick(object sende

7、r, System.Windows.Forms.ToolBarButtonClickEventArgs e) if(e.Button=toolBarButton1) / 如果单击工具按钮【水浒】,则显示下面的文本 label1.Text=滚滚长江东逝水,浪花淘尽英雄。是非成败转头空,几度夕阳红。; else if(e.Button=toolBarButton2) / 如果单击工具按钮【春晓】,则显示下面的文本 label1.Text=春眠不觉晓,处处闻啼鸟,夜来风雨声,花落知多少。;,else if(e.Button=toolBarButton3) / 如果单击工具按钮【枯藤】,则显示下面的文

8、本 label1.Text=枯藤,老树,昏鸦,夕阳西下,断肠人在天涯。; else / 如果单击工具按钮【水浒】,则显示下面的文本 label1.Text=少壮不努力,老大图悲伤。; 另外,工具栏中按钮往往实现和菜单中选项相同的功能,这种情况下,不能通过ToolBarButton的DropDownMenu实现,因为它只能连接相关的,弹出式菜单;可以通过设置ToolBarButton的Tag的属性为相应菜单对象,从而实现和菜单对象的关联。比较简便的方法是在程序中设置。如可以在主窗体的构造程序InitializeComponent()中该工具栏按钮的后面加上以下代码: toolBarButton1

9、.Tag =menuItem6; 编写工具栏单击事件,通过调用PerformClick方法激活相应的菜单项,如以下代码: ToolBarButton button=e.Button; MenuItem mItem=(MenuItem)button.Tag ; mItem.PerformClick();,10.3 状态栏的设计 10.3.1 状态栏的创建 在Windows的应用程序中,利用设计器打开要创建状态栏的窗体。然后添加状态栏,添加过程如下: 在工具箱的Windows选项中双击StatusBar控件,在窗体上显示一个状态栏。 设置状态栏的属性。 首先设置ShowPanel的值为True,即

10、要求在状态栏上显示状态面板,然后,单击Panels属性右边的,弹出StatusBarPanels集合编辑器对话框,如图10-7。通过“添加”按钮实现状态面板的添加。也可使用“移除”按钮实现状态面板的删除。,【例10-3】制作一个点菜的菜单:如图10-4所示,通过主菜单或者工具栏可以实现点菜的功能,并将点的菜名列在窗体右边的ListBox控件中。在窗体中单击鼠标右键,将出现一个弹出式菜单,可以点当天的优惠菜。在窗体下方有一个状态栏,显示出当前点过的菜的总价钱。在窗体中间有两个按钮。通过【点菜完毕】按钮,可以将Memo控件中已经点的菜输出打印;通过【重新点菜】按钮,可以将Memo组件中的内容清空,

11、同时将状态栏中的总价格清为零。, 建立Windows 应用程序和设计相应的窗体界面。添加控件,设置相应的属性。,图10-4 点菜的菜单的设计,通过设置工具栏中按钮的Tag属性和菜单相关联。设置如下: / 设置工具栏中的工具按钮和菜单项关联 toolBarButton1.Tag=menuItem6 System.Windows.Forms.MenuItem, Items.Count: 0, Text: 大( toolBarButton2.Tag=menuItem7; toolBarButton4.Tag=menuItem4; toolBarButton5.Tag=menuItem5; toolB

12、ar1中的按钮与菜单关联需要的工具栏的单击事件如下: ToolBarButton button=e.Button; MenuItem mItem=(MenuItem)button.Tag ; mItem.PerformClick();, 编写程序代码。 程序的运行结果如图10-4所示。,10.4.1 模式对话框和非模式对话框 对话框可以分为模式对话框和非模式对话框两种。模式对话框是指用户只能在当前的窗体进行操作,在该窗体关闭之前不能切换到其它窗体。非模式对话框是指当前所操作的窗体可以切换。两者区别是在对话框被关闭之前用户能否在同一应用程序的其他地方进行工作。 C#的From类中,使用show方

13、法实现非模式窗体显示。通常情况下,窗体的显示为非模式显示。如显示非模式窗体From2,代码如下: Form2 frm=new Form2(); frm.Show();,模式窗体的显示通过ShowDialog方法实现,如在程序运行过程中,以下代码实现窗体的模式显示: Form2 frm=new Form2(); frm.ShowDialog(); 【例10-4】通过多窗体了解模式窗体显示和非模式窗体显示。如图10-5所示。 本例使用3个窗体了解模式窗体显示和非模式窗体显示。主窗体定义为Form1,标题为“欢迎使用本系统”,通过“说明”按钮实现Form3即标题为“系统说明”窗体非模式显示,即在运行

14、过程中,可以通过鼠标点击和Form1之间切换;,通过“登录”按钮实现运行过中Form2即标题为“使用密码登录”的窗体模式显示,不能通过鼠标点击和Form1之间切换。,图10-11 多窗体显示,在窗体Form1为button1控件编写单击事件,实现说明窗体Form3的非模式显示。代码如下: private void button1_Click(object sender, System.EventArgs e) Form3 frm=new Form3(); / 声明frm为From3 frm.Show(); / 非模式显示 ,为窗体Form1中的button2控件编写单击事件,实现使用密码登录窗

15、体Form2的模式显示。代码如下: private void button2_Click(object sender, System.EventArgs e) Form2 frm=new Form2(); frm.ShowDialog(); ,为窗体Form2中的button1控件编写单击事件,实现密码判断,代码如下: private void button1_Click(object sender, System.EventArgs e) if (textBox1.Text=abcd) MessageBox.Show(您成功登录了本系统,提示); Application.Exit(); /

16、应用程序终止运行 else MessageBox.Show(您的密码有误,请重新输入!,提示); ,10.5.2 消息框 消息框一般用于程序运行过程中显示提示或信息。可以有不同格式的消息框。Windows应用程序中,为提高于用户的交互能力,消息框大量使用。C#中通过MessageBox类实现消息框的定义。 1. MessageBox类 该类提供了静态方法Show显示消息框,有多种形式实现消息框的显示。 (1) 用于显示指定文本的消息框 格式如下:图10-12 显示文本的消息框 public static DialogResult Show(string);,(2) 显示指定文本和标题的消息框 格式如下:图10-13 显示文本和标题的消息框 public static DialogResult Show(string, string); 其中第一个string参数用于显示文本信息,第二个string参数用于显示消息框的标题。在程序中编写代码如下: MessageB

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > PPT模板库 > PPT素材/模板

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号