Windows窗体应用程序开发

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

第9章Windows窗体应用程序开发本章要点Windows窗体开发基础常用Windows控件Windows菜单设计工具栏与状态栏设计通用对话框编程9.1Windows窗体编程9.1.1WinForms概述控件可视化界面组件统称为控件程序执行流程控制模式:过程控制模式(非图形用户界面应用程序的传统控制模式)事件驱动模式(Windows图形用户界面应用程序的控制模式)9.1.1WinForms概述9.1.1WinForms概述设计窗口各种控件属性放置控件的区域usingSystem;usingSystem.Collections.Generic;usingSystem.ComponentModel;usingSystem.Data;usingSystem.Drawing;usingSystem.Text;usingSystem.Windows.Forms;namespaceWindowsApplication3{publicpartialclassForm1:Form{publicForm1(){InitializeComponent();}}}提供了大量绘图工具的访问权限基础核心命名空间ArrayList、BitArray、Hashtable、Stack、StringCollection和StringTable类大量窗体和控件从System.Windows.Forms.Form派生VisualStudio.NET生成的代码9.1.1WinForms概述partialclassForm1{///summary///必需的设计器变量。////summaryprivateSystem.ComponentModel.IContainercomponents=null;构造函数调用InitializeComponent()方法#regionWindows窗体设计器生成的代码///summary///设计器支持所需的方法-不要///使用代码编辑器修改此方法的内容。////summaryprivatevoidInitializeComponent(){this.SuspendLayout();////Form1//this.AutoScaleDimensions=newSystem.Drawing.SizeF(6F,12F);this.AutoScaleMode=System.Windows.Forms.AutoScaleMode.Font;this.ClientSize=newSystem.Drawing.Size(333,266);this.Name=Form1;this.Text=Form1;this.ResumeLayout(false);}#endregion项目的容器9.1.1WinForms概述///summary///清理所有正在使用的资源。////summary///paramname=disposing如果应释放托管资源,为true;否则为false。/paramprotectedoverridevoidDispose(booldisposing){if(disposing&&(components!=null)){components.Dispose();}base.Dispose(disposing);}释放系统资源9.1.1WinForms概述staticclassProgram{///summary///应用程序的主入口点。////summary[STAThread]staticvoidMain(){Application.EnableVisualStyles();Application.SetCompatibleTextRenderingDefault(false);Application.Run(newForm1());}}程序的主入口点9.1.1WinForms概述标签按钮组合框列表框文本框9.1.1WinForms概述(1)创建窗体(2)为窗体添加控件(3)设计控件在窗体中的布局(4)设置各控件属性(5)编写代码,响应控件事件GUI(GraphicsUserInterface),即图形用户界面,是指用图形的方式实现人与计算机之间的交互。9.1.2编写GUI应用程序的步骤9.1.3Control类.NET中的大多数控件都派生于System.Windows.Forms.Control类。Control类实现了所有窗体交互控件的基本功能:处理用户键盘输入、处理消息驱动、限制控件大小等等。Control类的属性Control类的属性Control类的属性Name:9.1.4控件的基本属性用来获取或设置控件的名称。名称是控件的标识。Text:用来获取或设置控件的标题文字。Width和Height:用来获取或设置控件的大小。X和Y:用来获取或设置控件的位置。Visible:用来获取或设置控件是否可见。取值为true或false。Enabled:9.1.4控件的基本属性ForeColor:用来获取或设置控件的前景色。BackColor:用来获取或设置控件的背景色。Font:用来获取或设置控件的字体。BorderStyle:用来获取或设置控件的边框。用来获取或设置控件是否对响应交互。取值为true或false。AutoSize:9.1.4控件的基本属性Anchor:Dock:获取或设置控件停靠到父容器的哪一个边缘。TextAlign:用来确定文本对齐方式。Cursor:用来获取或设置鼠标移到控件上时,被显示的鼠标指针类型。用来获取或设置控件是否自动调整大小。取值为true或false。获取或设置控件的哪些边缘锚定到其容器边缘。(1)Name:用来获取或设置控件的名称。名称是控件的标识。(2)Text:用来获取或设置控件的标题文字。(3)Width和Height:用来获取或设置控件的大小。(4)X和Y:用来获取或设置控件的位置。(5)Visible:用来获取或设置控件是否可见。取值为true或false。(6)Enabled:用来获取或设置控件是否对响应交互。取值为true或false。(7)ForeColor:用来获取或设置控件的前景色。(8)BackColor:用来获取或设置控件的背景色。(9)Font:用来获取或设置控件的字体。(10)BorderStyle:用来获取或设置控件的边框。(11)AutoSize:用来获取或设置控件是否自动调整大小。取值为true或false。(12)Anchor:获取或设置控件的哪些边缘锚定到其容器边缘。(13)Dock:获取或设置控件停靠到父容器的哪一个边缘。(14)TextAlign:用来确定文本对齐方式。(15)Cursor:用来获取或设置鼠标移到控件上时,被显示的鼠标指针的类型。在窗体上放置一个图片框、一个“显示”按钮和一个“隐藏”按钮。开始运行时,图片不可见,“显示“按钮可用,“隐藏”按钮不可用。单击“显示”按钮后,图片显示出来,“显示”按钮变成不可用,而“隐藏”按钮变成可用。例9-1:图片的显示和隐藏问题描述9.1.5事件和事件处理事件处理程序是绑定到事件的方法。当引发事件时,执行事件处理程序内的代码。每个事件处理程序提供两个处理事件的参数。如下为Button控件的Click事件的事件处理程序:第一个参数sender提供对引发事件的对象的引用。第二个参数e传递针对要处理的事件的对象。通过引用对象的属性(有时引用其方法)可获得一些信息,如鼠标事件中鼠标的位置或拖放事件中传输的数据。privatevoidbutton1_Clicked(objectsender,System.EventArgse){}键盘事件:当用户对键盘进行操作时,系统会产生相应的键盘事件。当用户按下某个键时,就会发生KeyDown事件,随后便发生KeyPress事件。而当用户释放某个键时,发生KeyUp事件。当用户按住某个键不放时,KeyDown和KeyPress事件会不停地重复触发。9.1.5事件和事件处理鼠标事件:鼠标是一种定位输入设备,通常有两个或三个按钮(左、中和右按钮),还可能有滚轮。它的基本操作方式主要有:单击、双击和滚动。9.1.5事件和事件处理Control类的事件Control类的方法Control类的方法例9-2:图片显示控制问题描述窗体上用图片框显示一张图片。当在图片框上单击鼠标左键时图片放大10%,单击鼠标右键时图片缩小10%。鼠标在图片框上移动时,窗体标题显示当前位置坐标。9.2常用控件标签(Label):用于显示用户不能编辑的文本或图象,起标注或说明作用。该控件不能获得焦点。9.2.1标签标签标签的属性、事件与方法属性说明Text该属性用于设置或获取与该控件关联的文本Image指定标签要显示的图象方法说明Hide隐藏控件,调用该方法时,即使Visible属性设置为True,控件也不可见Show相当于将控件的Visible属性设置为True并显示控件事件说明Click用户单击控件时将发生该事件9.2.1标签按钮(Button):提供用户与应用程序的交互,单击按钮来执行相应的操作。9.2.2按钮按钮按钮的属性、事件与方法属性说明Text按钮表面的标题方法说明PerformClick执行Button控件的Click事件事件说明Click用户单击控件时将发生该事件MouseEnter鼠标进入按钮区域时触发MouseLeave鼠标离开按钮区域时触发9.2.2按钮9.2.2按钮Click事件练习。privatevoidbutton1_Click(objectsender,System.EventArgse){MessageBox.Show(this,你点击了[确定]按钮。,提示信息,MessageBoxButtons.OK,MessageBoxIcon.Information);}9.2.2按钮MouseEnter事件练习。privatevoidbutton1_MouseEnter(objectsender,System.EventArgse){//颜色在System.Drawing名称空间下this.button1.BackColor=Color.Red;}9.2.2按钮MouseLeave事件练习。privatevoidbutton1_MouseLeave(objectsender,System.EventArgse){this.button1.BackColor=SystemColors.Control;}文本框(TextBox):文本框经常用于获取用户输入或显示文本,通常用于可编辑文本,也可以设定其成为只读控件。文本框能够显示多行数据,并添加基本的格式设置。9.2.3文本框文本框属性说明MaxLength可在文本框中输入的最大字符数Multiline表示是否可在文本框中输入多行文本Passwordchar机密和敏感数据,密码输入字符ReadOnly文本框中的文本为只读Text检索在控件中输入的文本方法说明Clear删除现有的所有文本Focus设置焦点事件说明KeyPress用户按一个键结束时将发生该事件Text属性是文本框最重要的属性,要显示的文本就包含在Text属性中。Text属性可以在设计窗口时使用属性窗口设置,也可以在运行时用代码设置或者通过用户输入设置,同样也可以在运行时通过读取Text属性来获得文本框的当前内容。文本框的属性、事件与方法9.2.3文本框设计一个乘法运算窗口,如下图所示,该窗口能完成浮点数乘法运算。例9-3:乘法运算说明privatevoidbutton1_Click(objectsender,EventArgse)//求积{doublea=0,b=0,s=0;try{a=Convert.ToDouble(textBox1.Text);b=Convert.ToDouble(textBox2.Text);}catch(Exceptionexp){Messag

1 / 93
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功