Visual C# 2008程序设计第10章_第1页
Visual C# 2008程序设计第10章_第2页
Visual C# 2008程序设计第10章_第3页
Visual C# 2008程序设计第10章_第4页
Visual C# 2008程序设计第10章_第5页
已阅读5页,还剩19页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

VisualC#2008程序设计

第10章

基于Windows的应用程序17十二月2023VisualC#2008程序设计第10章

基于Windows的应用程序10.1Windows窗体应用程序概述10.2.Windows窗体及控件介绍10.3.常用控件的属性、方法和事件10.4.基于WindowsForms的程序设计17十二月2023VisualC#2008程序设计10.1Windows窗体应用程序概述1.Windows窗体项目结构以下过程将创建一个Windows应用程序,并了解整个项目的基本结构。实现步骤如下:(1)点击右下角“开始”

“所有程序”

“MicrosoftVisualStudio2008”

“MicrosoftVisualStudio2008”打开VisualStudio2008开发环境。(2)选择菜单“文件”下面的“新建”菜单的级联菜单“项目…”,打开“新建项目”对话框,如图10-1所示。在左侧“项目类型”窗格中选择“VisualC#”,在右侧的“模板”窗格中选择“Windows窗体应用程序”(3)在“名称”文本框中,输入“MyFirstApplication”作为该项目的名称。在“位置”文本框中,输入你准备保存项目的目录或者单击“浏览…”按钮选择目录。(4)单击“确定”,VisualStudio将新建一个项目,并在窗体设计器中显示新窗体。17十二月2023VisualC#2008程序设计10.1Windows窗体应用程序概述(5)如图10-2所示,在“解决方案管理器”窗口中展开“Form1.cs”前面的“+”号,双击“Form1.Designer.cs”,可以查看“Form1.Designer.cs”的代码,看程序代码的基本结构:所有的代码都属于名称空间MyFirstApplication,名称空间MyFirstApplication中包含了类Form1,类Form1包含一些变量和方法。和类和对象中我们看到的类的定义有所不同,这里Form1的前面多了一个关键字partial,关键字partial允许将类、结构或接口的定义拆分到多个文件中。17十二月2023VisualC#2008程序设计10.1Windows窗体应用程序概述(6)既然加了关键字partial,那么类Form1的另一部分代码在什么位置呢?右键选择“Form1.cs”,在下拉菜单中选择“查看代码”,可以查看“Form1.cs”的代码。可以看到类Form1继承了Form类,并且包含构造函数Form1()调用函数InitializeComponent(),函数InitializeComponent()的定义在“Form1.Designer.cs”中。17十二月2023VisualC#2008程序设计10.1Windows窗体应用程序概述(7)双击“Program.cs”,可以看到Main()函数,Main()函数是整个应用程序的入口,由此开始应用程序的运行,Application.Run(newForm1())指在当前线程上开始运行标准应用程序消息循环,并使窗体Form1可见。17十二月2023VisualC#2008程序设计10.2.Windows窗体及控件介绍Windows窗体是一个内容丰富的编程框架,用于创建更易于使用的客户端应用程序。可以在System.Windows.Forms命名空间找到用于创建Windows桌面应用程序的类,它们统称为WindowsForms类。这个命名空间包含了Form类,它是所有对话框和顶级窗口的基类。另外,System.Windows.Forms命名空间还包含管理控件的类、与剪贴板进行交互的类、菜单和打印机的类等。Windows窗体是所有控件的最高一级容器,它里面可以放置各种各样的其他控件。【例10-2】在本任务中,将在【例10-1】的基础上,增加一个窗体。17十二月2023VisualC#2008程序设计10.2.Windows窗体及控件介绍1、新建一个窗体Windows窗体是一个内容丰富的编程框架,用于创建更易于使用的客户端应用程序。可以在System.Windows.Forms命名空间找到用于创建Windows桌面应用程序的类,它们统称为WindowsForms类。这个命名空间包含了Form类,它是所有对话框和顶级窗口的基类。另外,System.Windows.Forms命名空间还包含管理控件的类、与剪贴板进行交互的类、菜单和打印机的类等。Windows窗体是所有控件的最高一级容器,它里面可以放置各种各样的其他控件。17十二月2023VisualC#2008程序设计10.2.Windows窗体及控件介绍【例10-2】在本任务中,将在【例10-1】的基础上,增加一个窗体。实现步骤如下:(1)在“解决方案资源管理器”中右键单击项目名“MyFirstApplication”

“添加”

“Windows窗体”,如图10-3所示。在弹出的“添加新项”对话框中选择“Windows窗体”,在“名称”文本框中输入新建窗体的名字,例如“Form2.cs”,如图10-4所示。(2)点击“添加”,新建一个窗体,窗体设计器中出现Form2,解决方案资源管理器中也出现Form2。(3)点击

按钮运行程序,出现的是哪一个窗口呢?为什么?17十二月2023VisualC#2008程序设计10.2.Windows窗体及控件介绍2、设置窗体属性【例10-3】在本任务中,将在【例10-2】的基础上,设置窗体的基本属性。实现步骤如下:(1)双击“解决方案资源管理器”中“Form1.cs”出现Form1所在的窗体。(2)在“属性”窗口找到Text属性,将属性值改为“第一个窗体”,如图10-5所示。(3)点击

按钮运行程序,可以看到窗体Form1的标题已经发生改变,如图10-6所示。17十二月2023VisualC#2008程序设计10.2.Windows窗体及控件介绍(4)除了在“属性”窗口设置控件属性,还可以在程序运行时改变控件属性。双击Form1,进入到Form1的默认事件Load,在方法内加入语句“this.Text="在代码中改变属性";”,加入语句后方法如下所示。privatevoidForm1_Load(objectsender,EventArgse){//思考一下,代码能改为“Form1.Text="在代码中改变属性";”吗this.Text="在代码中改变属性";}(4)点击

按钮运行程序,可以看到窗体Form1的标题同样发生改变。17十二月2023VisualC#2008程序设计10.2.Windows窗体及控件介绍3、向窗体添加控件【例10-4】在本任务中,将在【例10-3】的基础上,在Form1上添加一个按钮。实现步骤如下:(1)鼠标移动到悬浮在左上方的“工具箱”窗口(如果“工具箱”不存在,可以通过菜单“视图”

“工具箱”打开“工具箱”窗口),双击

按钮(或者在按钮上按住鼠标左键,拖动到Form1窗体上再释放左键),都可以在窗体上添加一个Button控件,在窗体上添加其他控件方法也相同。(2)如果觉得控件的位置不合适,可以选中控件后按住鼠标左键拖动到合适的地方,然后释放鼠标左键。(3)觉得控件的大小不合适,可以选中控件,此时控件周围会出现八个小方框,将鼠标放到八个小方框中的一个,鼠标会变成箭头,按住鼠标左键拖动控件到合适的大小后释放鼠标。(4)如果需要微调控件大小,按住shift键,和“↑”、“↓”、“←”、“→”键联合使用可以微调控件大小。17十二月2023VisualC#2008程序设计10.2.Windows窗体及控件介绍4、事件处理【例10-5】在本任务中,将在【例10-4】的基础上,为Form1上的按钮添加事件代码,当点击按钮后弹出【例10-2】中添加的Form2。实现步骤如下:(1)设置Button控件的Text属性为“显示Form2”。(2)当鼠标在控件上双击时,会自动添加该控件的默认事件,在“代码”窗口会自动添加该事件处理的代码框,只要在代码框中编辑代码即可。双击Form1上的按钮,为其添加“Click”事件处理,转到“Form1.cs”代码窗口,添加代码如下:privatevoidbutton1_Click(objectsender,EventArgse){Form2form=newForm2();form.Visible=true;}(3)点击

按钮运行程序,点击按钮,查看结果。17十二月2023VisualC#2008程序设计10.3常用控件的属性、方法和事件1.属性属性就是窗体的特征,包括控件的名称、外观、可访问性、数据等内容。不同种类的控件也会有一些属于自己的特殊属性,而掌握这些特殊属性则是掌握不同控件的关键。比如,CheckBox控件用于进行选择,所以就拥有CheckState属性用于获取或设置CheckBox的选中状态,这个属性是所有单选或多选类控件都会有的属性,但是Button控件却不具有这个属性。在代码中输入“对象名”+“.”后,比如“button1.”,图标

后面的就是该控件所具有的属性。可以很方便的在VisualStudio集成开发环境中“属性”窗口设置控件属性(如果没有“属性”窗口,点击“视图”

“属性窗口”打开“属性”窗口)17十二月2023VisualC#2008程序设计10.3常用控件的属性、方法和事件Location用于获取或设置该控件的左上角相对于其容器的左上角的坐标2.事件

事件是用户和程序交互地一种最普遍的方式,事件可由用户操作、程序代码或系统生成。例如,单击按钮时会触发Click事件,加载窗体时会触发Load事件。事件产生时会发送消息,并由专门的消息处理程序翻译并处理消息。通常,事件都是C#中预先设置好的、可以被对象识别的操作。用户只需要补充事件处理代码,就可以完成对事件的响应。控件一般都有一个默认事件,双击控件时会自动添加控件的默认事件。其它事件的代码添加需要点击

切换到“事件”列表,在相应事件的右侧输入框中双击后添加事件响应代码.3.方法方法定义了控件类所具有的能够控制自身状态的一些操作。17十二月2023VisualC#2008程序设计10.3常用控件的属性、方法和事件(1)窗体Form窗体时所有控件的容器,窗体对应的类是Form,利用窗体的属性可以设置窗体位置、大小、颜色、标题、是否透明等。窗体可以响应多种事件,如单击、双击、加载、关闭、大小改变、位置改变等等。窗体的默认事件为Load。(2)按钮Button按钮控件Button允许用户通过单击按钮来执行操作。当按钮被单击时,即调用Click事件处理程序,可将代码放入Click事件处理程序来执行所需要的操作。Button类的Text属性可用来表示按钮上显示的标题文本。17十二月2023VisualC#2008程序设计10.3常用控件的属性、方法和事件(3)标签Label标签控件Label用来显示用户不能编辑的文本,常用属性为Text。(4)文本框TextBox文本框TextBox提供一个文本编辑区域,用于显示用户输入或显示文本,常用属性为Text,默认事件为TextChanged,当文本框中的文本发生变化时触发。此外还有KeyDown、KeyPress和KeyUp事件,用于响应键盘按键事件。可以通过设置Multiline属性为True使文本框变为多行,PasswordChar属性可以设置密码字符,ReadOnly属性为True可以让文本框只读。17十二月2023VisualC#2008程序设计10.3常用控件的属性、方法和事件(5)单选框RadioButton单选框RadioButton,当同一组有多个单选按钮时,只能有一个单选按钮被选中。其中同一个容器中的单选按钮是一组,窗体Form、面板Panel和群组框GroupBox是常用容器。

符号的右边为选项说明文字,可以通过Text属性设置。Checked属性用来设置或者判断控件是否选中,Checked属性值为True符号为

,为False符号为

。RadioButton控件的默认属性为CheckedChanged事件,当用户单击单选按钮时,其选中状态会改变,同时触发CheckedChanged事件。17十二月2023VisualC#2008程序设计10.3常用控件的属性、方法和事件(6)复选框CheckBox复选框CheckBox,用户可以在多个复选框中选择一个和多个,CheckBox控件的属性和事件与RadioButton控件基本一样,此处不再赘述。(7)列表框ListBox列表框ListBox用来以项的形式显示一系列选项,并可从中选择一项或多项。如果有较多的选项,超出列表框区域而不能一次全部显示时,会自动加上滚动条。列表框最主要的特点是只能从中选择,不能直接写入或修改其内容。默认事件为SelectedIndexChanged,当SelectedIndex属性更改后发生。GetSelected方法,返回一个值指示是否选定了指定项。17十二月2023VisualC#2008程序设计10.3常用控件的属性、方法和事件Items属性:获取对当前存储在列表框中的项的引用,其值是列表框中所有项的集合。“列表框名.Items.Count”返回总行数。可以通过“列表框名.Items[下标]”来获取或者设置某一项的值,可以通过它来编辑列表框中的选项,Items常用方法有:Add方法(在列表框中添加新项);Insert方法(在列表框中的指定索引位置添加新项);Clear方法(清除列表框中的所有项);Remove方法(删除列表框中相符的项);RemoveAt方法(删除列表框中指定索引位置的项)。SelectionMode属性:属性值为One表示同时只能有一个选项被选中,属性值为MultiSimple时可以用鼠标来进行多选,属性值为MultiExtended时可以用Ctrl或Shift键+鼠标进行多选。SelectedIndex属性:返回列表框中第一个选定项的下标。SelectedItem属性:返回列表框中第一个选定项,通常是字符串值。17十二月2023VisualC#2008程序设计10.3常用控件的属性、方法和事件(8)组合框ComboBox组合框ComboBox是组合了文本框和列表框的特性而形成的一种控件,其作用与ListBox类似,但是占用的空间要小,常用的属性为Items,默认事件为SelectedIndexChanged。DropDownStyle属性:属性值为Simple时,显示在窗体中的是文本框和列表框,列表框不能被收起;属性值为DropDown时即可在输入,又可选择;属性值为DropDownList时只可选择不可输入。17十二月2023VisualC#2008程序设计10.3常用控件的属性、方法和事件(9)图片框PictureBox图片框PictureBox用来显示图像。通过Image属性旁的

选择图片框中的图片。ImageLocation属性用来设置图片文件的路径,可以是相对路径(相对路径的参照物是最后编译生成的可执行文件exe)也可以是绝对路径。(10)图片列表组件ImageList图片列表组件ImageList相对于一个图片数组,主要功能是为程序提供一系列同一尺寸的图片,在使用

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论