




已阅读5页,还剩39页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
高级窗体控件,菜单控件、工具栏控件和状态栏控件列表视图控件和树视图控件的使用字体、颜色对话框、文件对话框多文档界面编程,第8章Windows应用程序开发进阶高级窗体控件,菜单控件、工具栏控件和状态栏控件列表视图控件和树视图控件的使用字体、颜色对话框、文件对话框多文档界面编程,8.1菜单、工具栏控件和状态栏控件,菜单、工具栏和状态栏是构成Windows应用程序的基本元素。VisualStudio2008的工具箱中引入了一系列后缀为strip的控件,即MenuStrip(菜单)、ToolStrip(工具栏)和StatusStrip(状态栏),其中MenuStrip类似于普通软件的标准菜单,如word应用程序的文件编辑等菜单。ToolStrip是工具栏控件,可以产生带图像的小按钮,类似于word的工具栏,通常提供菜单项的简便操作。StatusStrip是状态栏控件,一般位于界面的下方,用于提示用户信息,类似于Windows操作系统中的状态栏。本节将详细介绍它们的用法。,8.1.1菜单控件的使用,MenuStrip控件是程序的主菜单。通常用来显示程序的各项功能,以方便用户选择执行。通过菜单,用户可以快速地进入需要的界面,因此,在开发Windows应用程序时,菜单仍然是组织大量选项最常用的方法。,使用MenuStrip控件设计下拉式菜单的步骤如下。,在Windows窗体中添加一个MenuStrip控件。单击该控件的Items属性中的按钮,弹出“项集合编辑器”对话框。“项集合编辑器”对话框中可以添加MenuItem子项。如果要为已经添加的子项添加子菜单,可以选择MenuItem子项,单击其DropDownItems属性后面的按钮,弹出“项集合编辑器”对话框(子项)。在“项集合编辑器”(子项)对话框中可以给指定子项添加子菜单,一次类推,即可王城下拉式菜单的设计。为了更方便的使用菜单,可通过给菜单项设置快捷键来实现。设置快捷键的方式为:选中菜单项,在“属性”窗口中通过设置ShortcutKeys属性为菜单添加快捷键。,除了在设计视图中创建和修改菜单、上下文菜单和菜单项的属性,还可以在运行时给菜单或上下文菜单添加菜单项。下面示例代码演示在程序中使用代码动态创建菜单的方法。01privatevoidCreateMenu()/自定义方法用来动态创建菜单0203MenuStripmnu=newMenuStrip();/创建MenuStrip对象04ToolStripMenuItemmedit=newToolStripMenuItem(编辑);/创建菜单对象05mnu.Items.Add(medit);/为菜单栏添加主菜单项06ToolStripMenuItemsubmcopy=newToolStripMenuItem(复制);/创建菜单对象07/为主菜单添加子菜单项08medit.DropDownItems.Add(submcopy);09this.Controls.Add(mnu);/添加菜单到窗体10,无论是在设计视图完成菜单设计,还是程序运行时动态添加菜单,都需要给菜单添加相应的功能,设计的菜单才有意义。通常菜单的功能都是通过选择菜单实现的,在菜单项的Click事件中添加处理程序。双击菜单项即可定位到该菜单的Click事件代码块中,然后在其中编写具体实现代码。如果用户需要编写带历史信息的菜单,即实现保存最近打开文件,可以将在菜单中最近打开文件的文件名和路径保存到事先建立的*.ini文件中,系统启动时读取其中数据建立数组菜单,即可实现显示历史菜单的功能。,8.1.2快捷菜单,ContextMenuStrip控件是一个快捷菜单,其位置是由鼠标所在的位置决定的。弹出式菜单的结构与下拉式菜单基本相同,区别是该菜单不是固定在窗体上面,而是通过单击鼠标右键来显示的。弹出式菜单的设计过程和下拉式菜单的设计过程基本类似,大家可参阅上节内容学习下拉式菜单的设计。下表列出了ContextMenuStrip类的常用成员及其说明。,下面代码演示了动态添加快捷菜单的方法。,01privatevoidCreateContextMenu()/自定义方法用来动态创建快捷菜单0203/创建快捷菜单对象04ContextMenuStripcmnu=newContextMenuStrip();05/设置快捷菜单的绘制样式06cmnu.RenderMode=ToolStripRenderMode.System;07/在快捷菜单中添加菜单项08cmnu.Items.Add(复制);09cmnu.Items.Add(粘贴);10cmnu.Items.Add(剪切);11/给窗体添加快捷菜单12this.ContextMenuStrip=cmnu;13,8.1.3工具栏控件的使用,ToolStrip控件是工具栏控件,它为用户提供了应用程序中常用菜单命令的快速访问方式。工具栏通常位于菜单栏的下方,由许多命令按钮组成,每个按钮上都有一个代表该按钮功能的小图标。由于工具栏方便直观,所以它被广泛用于各种应用软件的主界面当中。ToolStrip控件的项支持8种不同的类型,还具备可扩展性并拥有高度可配置的属性。带下拉菜单的工具栏在其他计算机语言中实现比较复杂,但在.NET中只需将工具栏按钮的类型设置为DropDownButton。具有提示功能的工具栏的创建只需将相应按钮的ToolTipTile属性设置为提示内容。下表列出了ToolStrip类的常用成员及其说明。,【范例8-1】ToolStrip工具条的制作,8.1.4状态栏控件的使用,StatusStrip控件是状态栏控件,通常位于窗体的底部,它一般用来显示应用管理系统的系统信息和软件操作员信息,如当前日期、时间、操作员、软件版本等。StatusStrip控件的项可以由ToolStripStatusLable对象、ToolStripDropDownButton对象、ToolStripSplitButton对象和ToolStripProgressBar对象组成。下表列出了StatusStrip类的常用成员及其说明。,使用StatusStrip控件设计状态栏的步骤如下。,在Windows窗体中添加一个StatusStrip控件。单击该控件的Items属性中的按钮,弹出“项集合编辑器”对话框。在“项集合编辑器“对话框中,用户可以根据需要选择添加StatusLabel控件、ProgressBar控件、DropDownButton控件和SplitButton控件,单击【确定】按钮,即可完成状态栏的设计。,第8章Windows应用程序开发进阶高级窗体控件,菜单控件、工具栏控件和状态栏控件列表视图和树视图控件的使用字体、颜色对话框、文件对话框多文档界面编程,8.2列表视图和树视图控件,TreeView控件和ListView控件有很多相似的地方,它们都为用户提供便捷的文件导航功能。不同的是TreeView控件以树视图方式展示给用户,而ListView控件以列表形式展现给用户。,8.2.1列表视图控件的使用,ListView控件可以显示带图标的项列表,用户可以使用该控件创建类似Windows资源管理器的用户界面。该控件具有四种视图模式:“LargeIcon”、“SmallIcon”、“List”和“Details”。下表列出了ListView类的常用成员及其说明。其中View属性用于获取或设置项在控件中的显示方式,默认值为LargeIcon。FullRowSelect属性是指定只选择某一项,还是选择某一项所在的整行,取值为True,表示单击某项会选择该项及所有子项;取值为False,表示仅选择该项本身。,下面代码演示了如何使用FullRowSelect属性。01this.lvStudent.View=View.Details;02this.lvStudent.FullRowSelect=true;,【范例8-2】ListView使用示例,8.2.2树视图控件的使用,TreeView控件是一个树形控件。该控件可以为用户显示节点层次结构,每个节点又可以包含子节点,包含子节点的节点叫父节点。用户可以按展开或折叠的方式显示父节点或包含子节点的节点。另外,通过设置TreeView的CheckBoxes属性,还可以决定是否在节点旁显示复选框。其中Nodes属性用于设置TreeView控件中的所有节点。属性值TreeNodeCollection表示分配给树视图控件的树节点。,【范例8-3】TreeView控件使用示例,第8章Windows应用程序开发进阶高级窗体控件,菜单控件、工具栏控件和状态栏控件列表视图控件和树视图控件的使用字体、颜色对话框、文件对话框多文档界面编程,8.3完成复杂功能的对话框-通用对话框控件,通用对话框是MircrosoftWindows提供的一系列统一风格的对话框,其包括字体对话框、颜色对话框、文件对话框和打印对话框等。.NETFramework把这些对话框封装成组件,用户可以轻松地使用这些组件创建Windows应用程序。,8.3.1字体对话框,FontDialog对话框是一个设置字体的组件,该组件允许用户选择当前安装在计算机中的字体,还可以设置字体的字形、大小、删除线等。如图所示。,下表列出了FontDialog类的主要成员以及说明。,下面对比较重要的成员进行介绍。,AllowVectorFonts属性语法:object.AllowVectorFonts=booleanFixedPitchOnly属性语法:object.FixedPitchOnly=boolean,下面将演示如何创建FontDialog组件的实例,并设置其属性,代码如下。,01FontDialogFD=newFontDialog();/创建字体对话框02FD.FontMustExist=true;/确定字体必须存在03FD.AllowVerticalFonts=true;/设置可以选择垂直显示的字体04FD.ShowEffects=true;/显示字体预览窗口05FD.ShowColor=true;/可以设置06FD.Color=this.richTextBox1.ForeColor;/设置默认字体颜色07FD.MaxSize=100;/设置字体的最大值08FD.MinSize=9;/设置字体的最小值09FD.Font=this.richTextBox1.Font;10if(FD.ShowDialog()=DialogResult.OK)1112this.richTextBox1.Font=FD.Font;/获取用户选择的字体13this.richTextBox1.ForeColor=FD.Color;/获取用户选择的颜色14,8.3.2颜色对话框,ColorDialog控件用于选择颜色,它允许用户从调色板选择颜色或自定义颜色。如图所示。,下表列出了ColorDialog类常用成员及其说明。,下面对比较重要的成员进行介绍。,AllowFullOpen属性。语法:object.AllowFullOpen=booleanColor属性。语法:object.Color=ColorFullOpen属性。语法:object.FullOpen=boolean,下面将演示如何创建ColorDialog组件的实例,并设置其属性,代码如下。,01ColorDialogcD=newColorDialog();/创建颜色对话框对象cD02cD.AllowFullOpen=true/用户是否可以使用该对话框定义自定义的颜色03cD.FullOpen=true;/创建自定义颜色的控件是否可见04cD.ShowHelp=true;/显示帮助按钮05cD.CustomColors=newint0,0,0,0,0,0;06if(cD.ShowDialog()=DialogResult.OK)/用户点击了“确定”按钮0708rTB.SelectionColor=cD.Color;/获取用户选择的颜色0910else1112rTB.SelectionColor=Color.Black;13,8.3.3文件对话框,文件对话框包含打开文件对话框(OpenFileDialog)和保存文件对话框(SaveFileDialog)。打开文件对话框组件允许用户选择要打开的文件,指定组件的Filter属性可以过滤文件类型。如图所示。保存文件对话框组件允许用户将文件保存到指定的位置。SaveFileDialog控件继承了OpenFileDialog控件的大多数属性、方法和事件。,下表列出了OpenFileDialog类的常用成员及其说明。,下面对比较重要的成员进行介绍。,Filter属性。获取或设置当前文件名筛选器字符串,该字符串决定对话框的“文件类型“或”另存为保存类型“框中出现的选择内容。例如,使“对话框只能打开相关的图片文件(.bmp、.gif、.jpg)。代码如下。OpenFileDialog1.Filter=bmp文件(*.bmp)|*.bmp|gif文件(*.gif)|*.gif|jpg文件(*.jpg)|*.jpg;RestoreDirectory属性。获取或设置一个值,该值指示对话框在关闭前是否还原当前目录。ShowDialog方法。显示OpenFileDialog控件。语法:object.ShowDialog(),下面将演示如何创建OpenFileDialog组件的实例,并设置其属性,代码如下。,01OpenFileDialogOfd=newOpenFileDialog();/创建打开文件对话框对象02Ofd.Title=打开播放文件对话框;/设置对话框标题03Ofd.InitialDirectory=C:;/对话框初始目录04Ofd.Filter=影视文件(*.rmvb)|*.rmvb|所有文件(*.*)|*.*;/定义文件筛选器05Ofd.FilterIndex=1;/在对话框中默认显示的文件筛选器索引06Ofd.ShowHelp=true;/打开文件对话框显示帮助按钮07Ofd.HelpRequest+=newSystem.EventHandler(this.ShowOpenDialogHelp);08Ofd.ShowDialog();,保存文件对话框代码如下。01SaveFileDialogSfd=newSaveFileDialog();/创建保存文件对话框对象02Sfd.Title=保存文件对话框;/设置对话框标题03Sfd.InitialDirectory=C:;/对话框初始目录04Sfd.Filter=Word文档(*.doc)|*.doc|所有文件(*.*)|*.*;/定义文件筛选器05Sfd.FilterIndex=1;/在对话框中默认显示的文件筛选器索引06Sfd.AddExtension=true;/自动在文件名中添加扩展名07Sfd.CreatePrompt=true;/提示用户是否创建指定文件名的文件08Sfd.OverwritePrompt=true;/提示用户是否覆盖指定文件名的文件09Sfd.CheckPathExists=true;10Sfd.ShowDialog();,8.3.4打印对话框,PrintDialog控件用于显示预先配置的对话框,用户可以使用该对话框来选择打印机、选择要打印的页以及确定与打印有关的设置。,下面对比较重要的成员进行介绍。,Document属性。用于获取或设置一个值,指示用于获取PrintDocument对象。属性值默认值为空引用。ShowDialog方法。用来显示与打印机相关设置的对话框。该方法常与Document属性一起使用。如果用户在对话框中单击“确定“,则返回值为DialogResult.OK,否则返回值为DialogResult.Cancel。,下面将演示如何创建PrintDialog组件的实例,并设置其属性,代码如下:01this.printDialog1.AllowCurrentPage=true;/显示当前页02this.printDialog1.AllowPrintToFile=true;/允许选择打印到文件03this.printDialog1.AllowSelection=true;04this.printDialog1.AllowSomePages=true;05this.printDialog1.PrintToFile=false;/不选择打印到文件06this.printDialog1.ShowHelp=true;07this.pri
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年特种作业类危险化学品安全作业烷基化工艺作业-硝化工艺作业参考题库含答案解析
- 2025年特种作业类危险化学品安全作业氯化工艺作业-磺化工艺作业参考题库含答案解析
- 两个建筑企业战略合作协议
- 2025年特种作业类危险化学品安全作业合成氨工艺作业-磺化工艺作业参考题库含答案解析
- 专题15 崇尚法治精神(河北专用)5年(2021-2025)中考1年模拟《道德与法治》真题分类汇编
- 流水小学数学试卷
- 林芝市中学初三数学试卷
- 临沂罗庄区数学试卷
- 2025年学历类自考公共课高等数学基础-数论初步参考题库含答案解析
- 2025年学历类自考公共课计算机网络技术-计算机网络技术参考题库含答案解析
- 膀胱镜检查记录
- 2021年西安陕鼓动力股份有限公司校园招聘笔试试题及答案解析
- 沈阳终止解除劳动合同证明书(三联)
- 化工装置静设备基本知识
- 电脑节能环保证书
- 江西师范大学研究生院非事业编制聘用人员公开招聘1人(专业学位培养办公室助理)(必考题)模拟卷
- 2021社会保险法知识竞赛试题库及答案
- 罐头食品加工工艺课件
- 《排课高手》用户手册
- 变压器套管课件
- 血液透析管路及透析器安装操作评分标准
评论
0/150
提交评论