资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,2013/5/16,#,第,5,章,Windows,应用程序开发,01,开发应用程序的步骤,02,Windows,窗体介绍,03,Windows,控件的使用,04,菜单、工具栏与状态栏,05,对话框,06,多文档界面(,MDI,),07,打印与打印预览,1,开发应用程序的步骤,开发应用程序的步骤,使用,C#,开发应用程序时,一般包括创建项目、界面设计、设置属性、编写程序代码、保存项目、程序运行等,6,个步骤。,2,Windows,窗体介绍,主要内容,添加窗体,设置启动窗体,设置窗体属性,窗体常用方法,01,02,03,04,窗体常用事件,05,如果,要向项目中添加一个新窗体,可以在项目名称上单击鼠标右键,在弹出的快捷菜单中选择“添加”,/,“,Windows,窗体”或者“添加”,/,“新建项”菜单,打开“添加新项”对话框,选择“,Windows,窗体”选项,输入窗体名称后,单击“添加”按钮,即可向项目中添加一个新的窗体,。,添加窗体,public static void Run(Form mainForm),设置启动窗体,语法,向,项目中添加了多个窗体以后,如果要调试程序,必须要设置首先运行的窗体,这时就需要设置项目的启动窗体。项目的启动窗体是在,Program.cs,文件中设置的,在,Program.cs,文件中改变,Run,方法,的参数,即可实现设置启动窗体,。,Run,方法用于在当前线程上开始运行标准应用程序,并使指定窗体可见。,设置窗体属性,更换,窗体的,图标,Icon,属性,隐藏窗体的标题栏,FormBorderStyle,属性,控制窗体的显示,位置,StartPosition,属性,修改窗体的,大小,Size,属性,设置窗体背景,图片,BackgroundImage,属性,控制窗体总在最,前,TopMost,属性,窗体常用方法,Show,方法,显示窗体,public void Show(),public void Show(IWin32Window owner),Hide,方法,隐藏,窗体,public void Hide(),Close,方法,关闭窗体,public void,Close(),窗体常用事件,Load,事件,窗体加载,private void Form1_Load(object sender,EventArgs e,),FormClosing,事件,窗体关闭,时触发,private void Form1_FormClosing(object sender,FormClosingEventArgs e),3,Windows,控件的使用,主要内容,Control,基类,Label,Button,TextBox,01,02,03,04,CheckBox,05,RadioButton,06,RichTextBox,07,ComboBox,08,ListBox,09,GroupBox,10,ListView,11,TreeView,12,ImageList,13,Timer,14,Control,基类,语法,Control,类是定义控件的基类,控件是带有可视化表示形式的组件。,Control,类实现向用户显示信息的类所需的最基本功能,它处理用户通过键盘和指针设备所进行的输入,另外,它还处理消息路由和安全。,Control,类的成员可以通过,Visual Studio,帮助查看,。,Label,控件,语法,Label,控件,又称为标签控件,它主要用于显示用户不能编辑的文本,标识窗体上的对象(例如,给文本框、列表框添加描述信息等),另外,也可以通过编写代码来设置要显示的文本信息。,1,设置标签,文本,label1.Text,=,用户名:,;,2,显示,/,隐藏控件,label1.Visible,=true,;,Button,控件,Button,控件,又称为按钮控件,它表允许用户通过单击来执行操作。,Button,控件既可以显示文本,也可以显示图像,当该控件被单击时,它看起来像是被按下,然后被释放。,Button,控件最常用的是,Text,属性,其中,,Text,属性用来设置,Button,控件显示的文本,,Click,事件用来指定单击,Button,控件时执行的,操作,。,TextBox,控件,TextBox,控件,又称为文本框控件,它主要用于获取用户输入的数据或者显示文本,它通常用于可编辑文本,也可以使其成为只读控件。文本框可以显示多行,开发人员可以使文本换行以便符合控件的大小。,创建只读,文本框,ReadOnly,属性,创建密码,文本框,PasswordChar,属性,创建多行,文本框,Multiline,属性,响应文本框的文本更改,事件,TextChanged,事件,CheckBox,控件,复选框,控件(,CheckBox,控件)用来表示是否选取了某个选项条件,常用于为用户提供具有是,/,否或真,/,假值的选项。,判断复选框是否选中,CheckState,属性,响应复选框的选中状态更改事件,CheckStateChanged,事件,RadioButton,控件,单,选按钮控件(,RadioButton,控件)为用户提供由两个或多个互斥选项组成的选项集。当用户选中某单选按钮时,同一组中的其他单选按钮不能同时选定。,判断单选按钮是否选中,Checked,属性,响应单选按钮选中状态更改事件,CheckedChanged,事件,RichTextBox,控件,RichTextBox,控件,又称为有格式文本框控件,它主要用于显示、输入和操作带有格式的文本,比如它可以实现显示字体、颜色、链接、从文件加载文本及嵌入的图像、撤消和重复编辑操作以及查找指定的字符等功能。,显示滚动条,ScrollBars,属性,设置字体属性,SelectionFont,属性和,SelectionColor,属性,显示为超链接,样式,T,ext,属性,和,LinkClicked,事件,设置段落格式,SelectionBullet,、,SelectionIndent,属性,ComboBox,控件,ComboBox,控件,又称为下拉组合框控件,它主要用于在下拉组合框中显示数据,该控件主要由两部分组成,其中,第一部分是一个允许用户输入列表项的文本框;第二部分是一个列表框,它显示一个选项列表,用户可以从中选择项。,设置下拉组合框,DropDownStyle,属性,响应下拉组合框的选项值更改事件,SelectedValueChanged,事件,ListBox,控件,ListBox,控件,又称为列表控件,它主要用于显示一个列表,用户可以从中选择一项或多项,如果选项总数超出可以显示的项数,则控件会自动添加滚动条。,添加和移除项,Items,属性的,Add,方法和,Remove,方法,总显示滚动条,HorizontalScrollbar,属性和,ScrollAlwaysVisible,属性,选择,多项,SelectionMode,属性,GroupBox,控件,GroupBox,控件,又称为分组框控件,它主要为其他控件提供分组,并且按照控件的分组来细分窗体的功能,其在所包含的控件集周围总是显示边框,而且可以显示标题,但是没有滚动条。,GroupBox,控件最常用的是,Text,属性,,用来设置分组框的标题,例如,下面代码用来为,GroupBox,控件设置标题“系统登录”,代码如下,:,groupBox1.Text=,系统登录,;,ListView,控件,ListView,控件,又称为列表视图控件,它主要用于显示带图标的项列表,其中可以显示大图标、小图标和数据。使用,ListView,控件可以创建类似,Windows,资源管理器右边窗口的用户界面。,添加项,Items,属性的,Add,方法,移除项,Items,属性的,RemoveAt,方法或,Clear,方法,选择项,Selected,属性,为项,添加图标,SmallImageList,、,LargeImageList,或,StateImageList,属性,启用平铺视图,View,属性,为项,分组,Group,属性,TreeView,控件,TreeView,控件,又称树控件,它可以为用户显示节点层次结构,而每个节点又可以包含子节点,包含子节点的节点叫父节点。,。,添加和删除树节点,Nodes,属性的,Add,、,Remove,方法,获取选中节点,AfterSelect,事件,、,Node.Text,属性,为节点,设置图标,ImageList,、,ImageIndex,和,SelectedImageIndex,属性,ImageList,组件,ImageList,组件,又称为图片存储组件,它主要用于存储图片资源,然后在控件上显示出来,这样就简化了对图片的管理。,ImageList,组件的主要属性是,Images,,它包含关联控件将要使用的图片。每个单独的图片可以通过其索引值或键值来访问;另外,,ImageList,组件中的所有图片都将以同样的大小显示,该大小由其,ImageSize,属性设置,较大的图片将缩小至适当的尺寸。,属性,说明,ColorDepth,获取图像列表的颜色深度,Images,获取此图像列表的,ImageList.ImageCollection,ImageSize,获取或设置图像列表中的图像大小,ImageStream,获取与此图像列表关联的,ImageListStreamer,Timer,组件,Timer,组件又称作计时器组件,它可以定期引发事件,时间间隔的长度由其,Interval,属性定义,其属性值以毫秒为单位。若启用了该组件,则每个时间间隔引发一次,Tick,事件,开发人员可以在,Tick,事件中添加要执行操作的代码。,成员,说明,Enabled,属性,获取或设置计时器是否正在运行,Interval,属性,获取或设置在相对于上一次发生的,Tick,事件引发,Tick,事件之前的时间(以毫秒为单位),Start,方法,启动计时器,Stop,方法,停止计时器,Tick,事件,当指定的计时器间隔已过去而且计时器处于启用状态时发生,使用,Timer,组件实现一个简单的倒计时程序,。,4,菜单、工具栏与状态栏,菜单,语法,菜单,控件使用,MenuStrip,控件来表示,它主要用来设计程序的菜单栏,,C#,中的,MenuStrip,控件支持多文档界面、菜单合并、工具提示和溢出等功能,开发人员可以通过添加访问键、快捷键、选中标记、图像和分隔条来增强菜单的可用性和可读性。,工具栏,语法,工具栏,控件使用,ToolStrip,控件来表示,使用该控件可以创建具有,WindowsXP,、,Office,、,Internet Explorer,或自定义的外观和行为的工具栏及其他用户界面元素,这些元素支持溢出及运行时项重新排序。,状态栏,语法,状态栏,控件使用,StatusStrip,控件来表示,它通常放置在窗体的最底部,用于显示窗体上一些对象的相关信息,或者可以显示应用程序的信息。,5,对话框,主要内容,消息框,窗体对话框,打开对话框控件,另存为对话框控件,01,02,03,04,浏览文件夹对话框控件,05,颜色对话框控件,06,字体对话框控件,07,消息框,语法,消息,对话框是一个预定义对话框,主要用于向用户显示与应用程序相关的信息以及来自用户的请求信息,在,.NET,框架中,使用,MessageBox,类表示消息对话框,通过调用该类的,Show,方法可以显示消息对话框,该方法有多种重载,形式,。,public static DialogResult Show(string text),public static DialogResult Show(string text,string caption,MessageBoxButtons,buttons,MessageBoxIcon icon),语法,MessageBox.Show(,确定要退出当前系统吗?,警告,MessageBoxButtons.YesNo,MessageBoxIcon.Warning,);,窗体对话框,窗体,是用户设计程序外观的操作界面,根据不用的需求,可以使用不用类型的,Windows,窗体。根据,Windows,窗体的显示状态,可以分为模式窗体和非模式窗体。,1,模式窗体,模式,窗体就是使用,ShowDialog,方法显示的窗体,它在显示时,如果作为激活窗体,则其他窗体不可用,只有在将模式窗体关闭之后,其他窗体才能恢复可用状态。,Form2,frm=new Form2,();,frm.ShowDialog,();,2,非模式窗体,非,模式窗体就是使用,Show,方法显示的窗体,一般的窗体都是非模式窗体。非模式窗体在显示时,如果有多个窗体,用户可以单击任何一个窗体,单击的窗体将立即成为激活窗体并显示在屏幕的最前面。,Form2,frm=new Form2,();,frm.Show();,打开对话框控件,语法,OpenFileDialog,控件表示一个通用对话框,用户可以使用此对话框来指定一个或多个要打开的文件的文件名。,语法,openFileDialog1.InitialDirectory=C,:;,openFileDialog1.Filter=bmp,文件,(*.bmp)|*.bmp|gif,文件,(*.gif)|*.gif|jpg,文件,(*.jpg)|*.jpg,;,openFileDialog1.ShowDialog();,另存为,对话框控件,语法,SaveFileDialog,控件表示一个通用对话框,用户可以使用此对话框来指定一个要将文件另存为的文件名。,语法,saveFileDialog1.Filter=,文本文件(,*.txt,),|*.txt;,saveFileDialog1.ShowDialog();,浏览文件夹对话框控件,语法,FolderBrowserDialog,控件主要用来提示用户选择文件夹。,语法,folderBrowserDialog1.ShowNewFolderButton=false;,if(folderBrowserDialog1.ShowDialog()=DialogResult.OK),textBox1.Text=folderBrowserDialog1.SelectedPath;,颜色对话框控件,语法,ColorDialog,控件表示一个通用对话框,用来显示可用的颜色并允许用户自定义颜色。,语法,colorDialog1.ShowDialog();,label1.ForeColor=this.colorDialog1.Color;,字体对话框控件,语法,FontDialog,控件用于公开系统上当前安装的字体,开发人员可在,Windows,应用程序中将其用作简单的字体选择解决方案,而不是配置自己的对话框。默认情况下,在“字体”对话框中将显示字体、字体样式和字号大小的列表框、删除线和下划线等效果的复选框、脚本(脚本是指给定字体可用的不同字符脚本,如希伯来语或日语等)的下拉列表以及字体外观等选项。,语法,fontDialog1.ShowDialog();,label1.Font=this.fontDialog1.Font;,6,多文档界面(,MDI,),主要内容,MDI,窗体的概念,设置,MDI,窗体,排列,MDI,子窗体,01,02,03,MDI,窗体的概念,语法,多,文档界面(,Multiple-Document Interface,)简称,MDI,窗体,主要用于同时显示多个文档,每个文档显示在各自的窗口中。,MDI,窗体中通常有包含子菜单的窗口菜单,用于在窗口或文档之间进行切换。,设置,MDI,窗体,语法,在,MDI,窗体中,起到容器作用的窗体被称为“父窗体”,可放在父窗体中的其他窗体被称为“子窗体”,也称为“,MDI,子窗体”。当,MDI,应用程序启动时,首先会显示父窗体。所有的子窗体都在父窗体中打开,在父窗体中可以在任何时候打开多个子窗体。每个应用程序只能有一个父窗体,其他子窗体不能移出父窗体的框架区域,。,1,设置父窗体,如果,要将某个窗体设置为父窗体,只要在窗体的属性面板中,将,IsMdiContainer,属性设置为,True,即可。,2,设置子窗体,设置,完父窗体,通过设置某个窗体的,MdiParent,属性来确定子窗体,。例如,,将,Form2,窗体设置成当前窗体的子窗体,代码如下:,Form2 frm2=new Form2,();,frm2.Show,();,frm2.MdiParent=this,;,排列,MDI,子窗体,语法,通过,使用带有,MdiLayout,枚举的,LayoutMdi,方法来排列多文档界面父窗体中的子窗体,。,public void LayoutMdi(MdiLayout value),7,打印与打印预览,主要内容,PageSetupDialog,组件,PrintDialog,组件,PrintPreviewDialog,组件,01,02,03,PrintDocument,组件,04,PageSetupDialog,组件,语法,PageSetupDialog,组件用于设置页面详细信息以便打印,它允许用户设置边框、边距调整量、页眉、页脚以及纵向或横向打印。,语法,pageSetupDialog1.Document=printDocument1;,pageSetupDialog1.AllowMargins=true,;/,启用页边距,pageSetupDialog1.AllowOrientation=true,;/,启用对话框的方向部分,pageSetupDialog1.AllowPaper=true,;/,启用对话框的纸张部分,pageSetupDialog1.AllowPrinter=true,;/,启用“打印机”按钮,pageSetupDialog1.ShowDialog,();/,显示“页面设置”对话框,PrintDialog,组件,语法,PrintDialog,组件用于选择打印机、要打印的页以及确定其他与打印相关的设置,通过,PrintDialog,组件可以选择全部打印、打印选定的页范围或打印选定内容等。,语法,printDialog1.Document=printDocument1,;/,设置操作文档,printDialog1.AllowCurrentPage=true,;/,显示“当前页”按钮,printDialog1.AllowSelection=true,;/,启用“选择”按钮,printDialog1.AllowSomePages=true,;/,启用“页”按钮,printDialog1.ShowDialog,();/,显示“打印”对话框,PrintPreviewDialog,组件,语法,PrintPreviewDialog,组件用于显示文档打印后的外观,其中包含打印、放大、显示一页或多页以及关闭此对话框的按钮。,PrintPreviewDialog,组件的常见属性和方法有,Document,属性和,ShowDialog,方法,其中,,Document,属性用于设置要预览的文档,而,ShowDialog,方法用来显示打印预览对话框。,例如,,设置,PrintPreviewDialog,组件的,Document,属性为,printDocument1,,并显示打印预览,对话框,。,语法,printPreviewDialog1.Document=this.printDocument1,;/,设置预览文档,printPreviewDialog1.ShowDialog,();/,使用,ShowDialog,方法,显示预览窗口,PrintDocument,组件,语法,PrintDocument,组件用于设置打印的文档,程序中常用到的是该组件的,PrintPage,事件和,Print,方法。,PrintPage,事件在需要将当前页打印输出时发生;而,Print,方法则用于开始文档的打印进程。,语法,小结,本章,主要对,Windows,应用程序开发的知识进行了详细讲解,包括,Windows,窗体的使用、常用的,Windows,控件的使用、菜单、工具栏和状态栏的使用、常用的对话框、,MDI,多文档界面以及打印相关的应用,本章所讲解的内容在开发,Windows,应用程序时是最基础、最常用的,尤其是,Windows,窗体以及,Windows,控件的使用,读者一定要熟练掌握。,上机指导,使用本章所学知识模拟实现进销存管理系统的登录窗体、主窗体和进货管理窗体,。,
展开阅读全文