Windows窗体应用程序开发.ppt
《Windows窗体应用程序开发.ppt》由会员分享,可在线阅读,更多相关《Windows窗体应用程序开发.ppt(95页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第第9 9章章 WindowsWindows窗体应用程序开发窗体应用程序开发本本 章章 要要 点点 WindowsWindows窗体开窗体开发基基础 常用常用WindowsWindows控件控件 WindowsWindows菜菜单设计 工具工具栏与状与状态栏设计 通用通用对话框框编程程9.1 Windows9.1 Windows窗体编程窗体编程 9.1.1 9.1.1 WinFormsWinForms概述概述控件可视化界面组件统称为控件p程序执行流程控制模式:程序执行流程控制模式:u过程控制模式(非图形用户界面应用程序的传统控制模式)过程控制模式(非图形用户界面应用程序的传统控制模式)u事件驱
2、动模式(事件驱动模式(WindowsWindows图形用户界面应用程序的控制模式)图形用户界面应用程序的控制模式)9.1.1 9.1.1 WinFormsWinForms概述概述9.1.1 9.1.1 WinFormsWinForms概述概述设计窗口各种控件属性放置控件的区域usingSystem;usingSystem.Collections.Generic;usingSystem.ComponentModel;usingSystem.Data;usingSystem.Drawing;usingSystem.Text;usingSystem.Windows.Forms;namespaceWi
3、ndowsApplication3publicpartialclassForm1:FormpublicForm1()InitializeComponent();提供了大量绘图工具的访问权限基础核心命名空间ArrayList、BitArray、Hashtable、Stack、StringCollection和StringTable类大量窗体和控件从System.Windows.Forms.Form派生VisualStudio.NET生成的代码9.1.1 9.1.1 WinFormsWinForms概述概述partialclassForm1/必需的设计器变量。/privateSystem.Comp
4、onentModel.IContainercomponents=null;构造函数调用InitializeComponent()方法#region Windows 窗体设计器生成的代码窗体设计器生成的代码 /设计器支持所需的方法设计器支持所需的方法-不要不要 /使用代码编辑器修改此方法的内容。使用代码编辑器修改此方法的内容。/private void InitializeComponent()this.SuspendLayout();/Form1 /this.AutoScaleDimensions=new System.Drawing.SizeF(6F,12F);this.AutoScaleM
5、ode=System.Windows.Forms.AutoScaleMode.Font;this.ClientSize=new System.Drawing.Size(333,266);this.Name=Form1;this.Text=Form1;this.ResumeLayout(false);#endregion项目的容器9.1.1 9.1.1 WinFormsWinForms概述概述/清理所有正在使用的资源。/如果应释放托管资源,为true;否则为false。protectedoverridevoidDispose(booldisposing)if(disposing&(compone
6、nts!=null)components.Dispose();base.Dispose(disposing);释放系统资源9.1.1 9.1.1 WinFormsWinForms概述概述staticclassProgram/应用程序的主入口点。/STAThreadstaticvoidMain()Application.EnableVisualStyles();Application.SetCompatibleTextRenderingDefault(false);Application.Run(newForm1();程序的主入口点9.1.1 9.1.1 WinFormsWinForms概述概述
7、标签按钮组合框列表框文本框9.1.1 9.1.1 WinFormsWinForms概述概述(1 1)创建窗体)创建窗体(2 2)为窗体添加控件)为窗体添加控件(3 3)设计控件在窗体中的布局)设计控件在窗体中的布局 (4 4)设置各控件属性)设置各控件属性(5 5)编写代码,响应控件事件)编写代码,响应控件事件GUI(GraphicsGUI(Graphics User User Interface)Interface),即图形用户,即图形用户界面,是指用图形的方式界面,是指用图形的方式实现人与计算机之间的交实现人与计算机之间的交互。互。9.1.2 9.1.2 编写编写GUIGUI应用程序的步骤
8、应用程序的步骤9.1.3 Control9.1.3 Control类类 .NET .NET中的大多数控件都派生于中的大多数控件都派生于System.Windows.Forms.ControlSystem.Windows.Forms.Control类。类。ControlControl类实现了所有窗体交互控件的基本功能:处理用户键盘输入、类实现了所有窗体交互控件的基本功能:处理用户键盘输入、处理消息驱动、限制控件大小等等。处理消息驱动、限制控件大小等等。ControlControlControlControl类的属性类的属性类的属性类的属性ControlControl类的属性类的属性类的属性类的属
9、性ControlControl类的属性类的属性类的属性类的属性pName:9.1.4 9.1.4 控件的基本属性控件的基本属性用来获取或设置控件的名称。名称是控件的标识。用来获取或设置控件的名称。名称是控件的标识。pTextText:用来获取或设置控件的标题文字。用来获取或设置控件的标题文字。pWidthWidth和和HeightHeight:用来获取或设置控件的大小。用来获取或设置控件的大小。pX X和和Y Y:用来获取或设置控件的位置。用来获取或设置控件的位置。pVisibleVisible:用来获取或设置控件是否可见。取值为用来获取或设置控件是否可见。取值为true或或false。pEn
10、abled:9.1.4 9.1.4 控件的基本属性控件的基本属性pForeColorForeColor:用来获取或设置控件的前景色。用来获取或设置控件的前景色。pBackColorBackColor:用来获取或设置控件的背景色。用来获取或设置控件的背景色。pFontFont:用来获取或设置控件的字体。用来获取或设置控件的字体。pBorderStyleBorderStyle:用来获取或设置控件的边框。用来获取或设置控件的边框。用来获取或设置控件是否对响应交互。取值为用来获取或设置控件是否对响应交互。取值为true或或false。pAutoSize:9.1.4 9.1.4 控件的基本属性控件的基本
11、属性pAnchorAnchor:pDockDock:获取或设置控件停靠到父容器的哪一个边缘。获取或设置控件停靠到父容器的哪一个边缘。pTextAlignTextAlign:用来确定文本对齐方式。用来确定文本对齐方式。pCursorCursor:用来获取或设置鼠标移到控件上时,被显示的鼠标指针类型。用来获取或设置鼠标移到控件上时,被显示的鼠标指针类型。用来获取或设置控件是否自动调整大小。取值为用来获取或设置控件是否自动调整大小。取值为true或或false。获取或设置控件的哪些边缘锚定到其容器边缘。获取或设置控件的哪些边缘锚定到其容器边缘。(1)Name:用来获取或设置控件的名称。名用来获取或设
12、置控件的名称。名称是控件的标识。称是控件的标识。(2)Text:用来获取或设置控件的标题文字。用来获取或设置控件的标题文字。(3)Width和和Height:用来获取或设置控件的大小。用来获取或设置控件的大小。(4)X和和Y:用来获取或设置控件的位置。用来获取或设置控件的位置。(5)Visible:用来获取或设置控件是否可见。用来获取或设置控件是否可见。取值为取值为true或或false。(6)Enabled:用来获取或设置控件是否对响应用来获取或设置控件是否对响应交互。取值为交互。取值为true或或false。(7)ForeColor:用来获取或设置控件的前景色。用来获取或设置控件的前景色。
13、(8)BackColor:用来获取或设置控件的背景色。用来获取或设置控件的背景色。(9)Font:用来获取或设置控件的字体。用来获取或设置控件的字体。(10)BorderStyle:用来获取或设置控件的边框。用来获取或设置控件的边框。(11)AutoSize:用来获取或设置控件是否自动用来获取或设置控件是否自动调整大小。取值为调整大小。取值为true或或false。(12)Anchor:获取或设置控件的哪些边缘锚获取或设置控件的哪些边缘锚定到其容器边缘。定到其容器边缘。(13)Dock:获取或设置控件停靠到父容器获取或设置控件停靠到父容器的哪一个边缘。的哪一个边缘。(14)TextAlign:
14、用来确定文本对齐方式。用来确定文本对齐方式。(15)Cursor:用来获取或设置鼠标移到控件用来获取或设置鼠标移到控件上时,被显示的鼠标指针的类型。上时,被显示的鼠标指针的类型。在窗体上放置一个图片框、一个在窗体上放置一个图片框、一个“显示显示”按钮和一个按钮和一个“隐藏隐藏”按钮。开始运行时,图片不可见,按钮。开始运行时,图片不可见,“显示显示“按钮按钮可用,可用,“隐藏隐藏”按钮不可用。单击按钮不可用。单击“显示显示”按钮后,图片按钮后,图片显示出来,显示出来,“显示显示”按钮变成不可用,而按钮变成不可用,而“隐藏隐藏”按钮变按钮变成可用。成可用。例例9-19-1:图片的显示和隐藏:图片的
15、显示和隐藏问题描述9.1.5 9.1.5 事件和事件处理事件和事件处理 事件处理程序是绑定到事件的方法。当引发事件时,执行事件处理程序是绑定到事件的方法。当引发事件时,执行事件处理程序内的代码。每个事件处理程序提供两个处理事件事件处理程序内的代码。每个事件处理程序提供两个处理事件的参数。如下为的参数。如下为Button Button 控件的控件的 Click Click 事件的事件处理程序:事件的事件处理程序:第一个参数第一个参数 sender 提供对引发事件的对象的引用。第二个参数提供对引发事件的对象的引用。第二个参数e传递针传递针对要处理的事件的对象。通过引用对象的属性(有时引用其方法)可
16、获得一对要处理的事件的对象。通过引用对象的属性(有时引用其方法)可获得一些信息,如鼠标事件中鼠标的位置或拖放事件中传输的数据。些信息,如鼠标事件中鼠标的位置或拖放事件中传输的数据。private void button1_Clicked(object sender,System.EventArgs e)p 键盘事件:键盘事件:当用户对键盘进行操作时,系统会产生相应的键盘当用户对键盘进行操作时,系统会产生相应的键盘事件。当用户按下某个键时,就会发生事件。当用户按下某个键时,就会发生KeyDownKeyDown事件,事件,随后便发生随后便发生KeyPressKeyPress事件。而当用户释放某个键
17、时,发事件。而当用户释放某个键时,发生生KeyUpKeyUp事件。当用户按住某个键不放时,事件。当用户按住某个键不放时,KeyDownKeyDown和和KeyPressKeyPress事件会不停地重复触发。事件会不停地重复触发。9.1.5 9.1.5 事件和事件处理事件和事件处理p 鼠标事件:鼠标事件:鼠标是一种定位输入设备,通常有两个或三个按鼠标是一种定位输入设备,通常有两个或三个按钮(左、中和右按钮),还可能有滚轮。它的基本操钮(左、中和右按钮),还可能有滚轮。它的基本操作方式主要有:单击、双击和滚动。作方式主要有:单击、双击和滚动。9.1.5 9.1.5 事件和事件处理事件和事件处理Co
18、ntrolControl类的事件类的事件类的事件类的事件 ControlControl类的方法类的方法类的方法类的方法ControlControl类的方法类的方法类的方法类的方法例例9-29-2:图片显示控制:图片显示控制问题描述 窗体上用图片框显示一张图片。当在图片框上单击鼠窗体上用图片框显示一张图片。当在图片框上单击鼠标左键时图片放大标左键时图片放大10%10%,单击鼠标右键时图片缩小,单击鼠标右键时图片缩小10%10%。鼠。鼠标在图片框上移动时,窗体标题显示当前位置坐标。标在图片框上移动时,窗体标题显示当前位置坐标。9.2 9.2 常用控件常用控件标签(标签(LabelLabel):用于
19、显示用户不能编):用于显示用户不能编辑的文本或图象,起标注或说明作用。辑的文本或图象,起标注或说明作用。该控件不能获得焦点。该控件不能获得焦点。9.2.1 9.2.1 标签标签标签 标签的属性、事件与方法标签的属性、事件与方法属属属属 性性性性说说说说 明明明明TextTextTextText该属性用于设置或获取与该控件关联的文本该属性用于设置或获取与该控件关联的文本该属性用于设置或获取与该控件关联的文本该属性用于设置或获取与该控件关联的文本ImageImageImageImage指定标签要显示的图象指定标签要显示的图象指定标签要显示的图象指定标签要显示的图象方方方方 法法法法说说说说 明明明
20、明HideHideHideHide隐藏控件,调用该方法时,即使隐藏控件,调用该方法时,即使隐藏控件,调用该方法时,即使隐藏控件,调用该方法时,即使 Visible Visible Visible Visible 属性设置为属性设置为属性设置为属性设置为 TrueTrueTrueTrue,控件也不可见,控件也不可见,控件也不可见,控件也不可见Show Show Show Show 相当于将控件的相当于将控件的相当于将控件的相当于将控件的 Visible Visible Visible Visible 属性设置为属性设置为属性设置为属性设置为 True True True True 并显示控件并显
21、示控件并显示控件并显示控件事事事事 件件件件说说说说 明明明明ClickClickClickClick用户单击控件时将发生该事件用户单击控件时将发生该事件用户单击控件时将发生该事件用户单击控件时将发生该事件9.2.1 9.2.1 标签标签按钮(按钮(ButtonButton):提供用户与应用程序):提供用户与应用程序的交互,单击按钮来执行相应的操作。的交互,单击按钮来执行相应的操作。9.2.2 9.2.2 按钮按钮按钮 按钮的属性、事件与方法按钮的属性、事件与方法属属属属 性性性性说说说说 明明明明TextTextTextText按钮表面的标题按钮表面的标题按钮表面的标题按钮表面的标题方方方方
22、 法法法法说说说说 明明明明PerformClickPerformClickPerformClickPerformClick执行执行执行执行Button Button Button Button 控件的控件的控件的控件的 Click Click Click Click 事件事件事件事件事事事事 件件件件说说说说 明明明明ClickClickClickClick用户单击控件时将发生该事件用户单击控件时将发生该事件用户单击控件时将发生该事件用户单击控件时将发生该事件MouseEnterMouseEnterMouseEnterMouseEnter鼠标进入按钮区域时触发鼠标进入按钮区域时触发鼠标进入按
23、钮区域时触发鼠标进入按钮区域时触发MouseLeaveMouseLeaveMouseLeaveMouseLeave鼠标离开按钮区域时触发鼠标离开按钮区域时触发鼠标离开按钮区域时触发鼠标离开按钮区域时触发9.2.2 9.2.2 按钮按钮9.2.2 9.2.2 按钮按钮ClickClick事件练习。事件练习。private void button1_Click(object sender,System.EventArgs e)MessageBox.Show(this,你点击了你点击了确定确定按钮。按钮。,提示信息提示信息,MessageBoxButtons.OK,MessageBoxIcon.In
24、formation);9.2.2 9.2.2 按钮按钮MouseEnterMouseEnter事件练习。事件练习。private void button1_MouseEnter(object sender,System.EventArgs e)/颜色在颜色在System.Drawing名称空间下名称空间下 this.button1.BackColor=Color.Red;9.2.2 9.2.2 按钮按钮MouseLeaveMouseLeave事件练习。事件练习。private void button1_MouseLeave(object sender,System.EventArgs e)th
25、is.button1.BackColor=SystemColors.Control;文本框(文本框(TextBoxTextBox):文本框经常用于获):文本框经常用于获取用户输入或显示文本,通常用于可编辑取用户输入或显示文本,通常用于可编辑文本,也可以设定其成为只读控件。文本文本,也可以设定其成为只读控件。文本框能够显示多行数据,并添加基本的格式框能够显示多行数据,并添加基本的格式设置。设置。9.2.3 9.2.3 文本框文本框文本框属属 性性说说 明明MaxLengthMaxLengthMaxLengthMaxLength 可在文本框中输入的最大字符数可在文本框中输入的最大字符数可在文本框中
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Windows 窗体 应用程序 开发
限制150内