




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第9章基于Windows的应用程序9.1Windows窗体应用程序概述
9.2
Windows窗体及控件介绍
9.3常用控件的属性、方法和事件
9.4基于Windows
Forms的程序设计06二月2023第9章基于Windows的应用程序06二月20239.1Windows窗体应用程序概述
以下步骤新建一个Windows应用程序并了解程序及项目结构;并且在已有Windows应用程序的基础上增加一个新的窗体。1.Windows窗体项目结构以下过程将创建一个Windows应用程序,并了解整个项目的基本结构。实现步骤如下:(1)点击右下角“开始”
“VisualStudio2017”打开VisualStudio2017开发环境。(2)选择菜单“文件”“新建”“项目…”,打开“新建项目”对话框,如图9-1所示。在左侧“项目类型”窗格中选择“Windows桌面”,在右侧的“模板”窗格中选择“Windows窗体应用(.NETFramework)”。06二月20239.1Windows窗体应用程序概述(3)在“名称”文本框中,输入“MyFirstApplication”作为该项目的名称。在“位置”文本框中,输入你准备保存项目的目录或者单击“浏览…”按钮选择目录。(4)单击“确定”,VisualStudio将新建一个项目,并在窗体设计器中显示新窗体。(5)如图9-2所示,在“解决方案管理器”窗口中展开“Form1.cs”前面的“
”号,双击“Form1.Designer.cs”,可以查看“Form1.Designer.cs”的代码,看程序代码的基本结构:所有的代码都属于名称空间MyFirstApplication,名称空间MyFirstApplication中包含了类Form1,类Form1包含一些变量和方法。和类和对象中我们看到的类的定义有所不同,这里Form1的前面多了一个关键字partial,关键字partial允许将类、结构或接口的定义拆分到多个文件中。06二月20239.1Windows窗体应用程序概述(6)既然加了关键字partial,那么类Form1的另一部分代码在什么位置呢?右键选择“Form1.cs”,在下拉菜单中选择“查看代码”,可以查看“Form1.cs”的代码。可以看到类Form1继承了Form类,并且包含构造函数Form1()调用函数InitializeComponent(),函数InitializeComponent()的定义在“Form1.Designer.cs”中。(7)双击“Program.cs”,可以看到Main()函数,Main()函数是整个应用程序的入口,由此开始应用程序的运行,Application.Run(newForm1())指在当前线程上开始运行标准应用程序消息循环,并使窗体Form1可见。06二月20239.2Windows窗体及控件介绍1、新建一个窗体Windows窗体是一个内容丰富的编程框架,用于创建更易于使用的客户端应用程序。可以在System.Windows.Forms命名空间找到用于创建Windows桌面应用程序的类,它们统称为WindowsForms类。这个命名空间包含了Form类,它是所有对话框和顶级窗口的基类。另外,System.Windows.Forms命名空间还包含管理控件的类、与剪贴板进行交互的类、菜单和打印机的类等。Windows窗体是所有控件的最高一级容器,它里面可以放置各种各样的其他控件。06二月20239.2Windows窗体及控件介绍1、新建一个窗体(1)在“解决方案资源管理器”中右键单击项目名“MyFirstApplication”“添加”“Windows窗体”,如图9-3所示。在弹出的“添加新项”对话框中选择“Windows窗体”,在“名称”文本框中输入新建窗体的名字,例如“Form2.cs”(2)点击“添加”,新建一个窗体,窗体设计器中出现Form2,解决方案资源管理器中也出现Form2。(3)点击
按钮运行程序,出现的是哪一个窗口呢?为什么?06二月20239.2Windows窗体及控件介绍2、设置窗体属性【例9-3】在本任务中,将在【例9-2】的基础上,设置窗体的基本属性。实现步骤如下:(1)双击“解决方案资源管理器”中“Form1.cs”出现Form1所在的窗体。(2)在“属性”窗口找到Text属性,将属性值改为“第一个窗体”,如图9-5所示。(3)点击
按钮运行程序,可以看到窗体Form1的标题已经发生改变,如图9-6所示。(4)除了在“属性”窗口设置控件属性,还可以在程序运行时改变控件属性。双击Form1,进入到Form1的默认事件Load,在方法内加入语句“this.Text="在代码中改变属性";”,加入语句后方法如下所示。privatevoidForm1_Load(objectsender,EventArgse){//思考一下,代码能改为“Form1.Text="在代码中改变属性";”吗this.Text="在代码中改变属性";}(5)点击
按钮运行程序,可以看到窗体Form1的标题同样发生改变。06二月20239.2Windows窗体及控件介绍3、向窗体添加控件【例9-4】在本任务中,将在【例9-3】的基础上,在Form1上添加一个按钮。实现步骤如下:(1)鼠标移动到悬浮在左上方的“工具箱”窗口(如果“工具箱”不存在,可以通过菜单“视图”“工具箱”打开“工具箱”窗口),双击
按钮(或者在按钮上按住鼠标左键,拖动到Form1窗体上再释放左键),都可以在窗体上添加一个Button控件,在窗体上添加其他控件方法也相同。(2)如果觉得控件的位置不合适,可以选中控件后按住鼠标左键拖动到合适的地方,然后释放鼠标左键。(3)觉得控件的大小不合适,可以选中控件,此时控件周围会出现八个小方框,将鼠标放到八个小方框中的一个,鼠标会变成箭头,按住鼠标左键拖动控件到合适的大小后释放鼠标。(4)如果需要微调控件大小,按住shift键,和“↑”、“↓”、“←”、“→”键联合使用可以微调控件大小。06二月20239.2Windows窗体及控件介绍4、事件处理【例9-5】在本任务中,将在【例9-4】的基础上,为Form1上的按钮添加事件代码,当点击按钮后弹出【例9-2】中添加的Form2。实现步骤如下:(1)设置Button控件的Text属性为“显示Form2”。(2)当鼠标在控件上双击时,会自动添加该控件的默认事件,在“代码”窗口会自动添加该事件处理的代码框,只要在代码框中编辑代码即可。双击Form1上的按钮,为其添加“Click”事件处理,转到“Form1.cs”代码窗口,添加代码如下:privatevoidbutton1_Click(objectsender,EventArgse){Form2form=newForm2();form.Visible=true;}(3)点击
按钮运行程序,点击按钮,查看结果。06二月20239.3.常用控件的属性、方法和事件
控件是带有可视化表示形式的组件。由于所有的窗体控件都是从System.Windows.Forms.Control类继承而来,所以,所有的Windows窗体控件都具有一些共性。掌握这些共性是快速入门Windows编程的捷径。1.属性
属性就是窗体的特征,包括控件的名称、外观、可访问性、数据等内容。不同种类的控件也会有一些属于自己的特殊属性,而掌握这些特殊属性则是掌握不同控件的关键。比如,CheckBox控件用于进行选择,所以就拥有CheckState属性用于获取或设置CheckBox的选中状态,这个属性是所有单选或多选类控件都会有的属性,但是Button控件却不具有这个属性。在代码中输入“对象名.”后,比如“button1.”,图标
后面的就是该控件所具有的属性。可以很方便的在VisualStudio集成开发环境中“属性”窗口设置控件属性(如果没有“属性”窗口,点击“视图”“属性窗口”打开“属性”窗口),如图9-7所示。06二月20239.3.常用控件的属性、方法和事件06二月20239.3.常用控件的属性、方法和事件2.事件
事件是用户和程序交互地一种最普遍的方式,事件可由用户操作、程序代码或系统生成。例如,单击按钮时会触发Click事件,加载窗体时会触发Load事件。事件产生时会发送消息,并由专门的消息处理程序翻译并处理消息。
通常,事件都是C#中预先设置好的、可以被对象识别的操作。用户只需要补充事件处理代码,就可以完成对事件的响应。控件一般都有一个默认事件,双击控件时会自动添加控件的默认事件。其它事件的代码添加需要点击
切换到“事件”列表,在相应事件的右侧输入框中双击后添加事件响应代码,如图9-8所示。06二月20239.3.常用控件的属性、方法和事件06二月20239.3.常用控件的属性、方法和事件3.方法方法定义了控件类所具有的能够控制自身状态的一些操作。06二月20239.4常用控件介绍(1)窗体Form
窗体是所有控件的容器,窗体对应的类是Form,利用窗体的属性可以设置窗体位置、大小、颜色、标题、是否透明等。窗体可以响应多种事件,如单击、双击、加载、关闭、大小改变、位置改变等等。窗体的默认事件为Load。(2)按钮Button
按钮控件Button允许用户通过单击按钮来执行操作。当按钮被单击时,即调用Click事件处理程序,可将代码放入Click事件处理程序来执行所需要的操作。Button类的Text属性可用来表示按钮上显示的标题文本。(3)标签Label
标签控件Label用来显示用户不能编辑(窗体运行后无法编辑)的文本,常用属性为Text。06二月20239.4常用控件介绍(4)文本框TextBox
文本框TextBox提供一个文本编辑区域,用于显示用户输入或显示文本,常用属性为Text,默认事件为TextChanged,当文本框中的文本发生变化时触发。此外还有KeyDown、KeyPress和KeyUp事件,用于响应键盘按键事件。
可以通过设置Multiline属性为True使文本框变为多行,PasswordChar属性可以设置密码字符,ReadOnly属性为True可以让文本框只读。06二月20239.4常用控件介绍(5)单选框RadioButton
单选框RadioButton,当同一组有多个单选按钮时,只能有一个单选按钮被选中。其中同一个容器中的单选按钮是一组,窗体Form、面板Panel和群组框GroupBox是常用容器。
符号的右边为选项说明文字,可以通过Text属性设置。Checked属性用来设置或者判断控件是否选中,Checked属性值为True符号为
,为False符号为
。RadioButton控件的默认属性为CheckedChanged事件,当用户单击单选按钮时,其选中状态会改变,同时触发CheckedChanged事件。(6)复选框CheckBox
复选框CheckBox,用户可以在多个复选框中选择一个和多个,选中状态为
,未选中状态为
。CheckBox控件的属性和事件与RadioButton控件基本一样,此处不再赘述。06二月20239.4常用控件介绍(7)列表框ListBox
列表框ListBox用来以项的形式显示一系列选项,并可从中选择一项或多项。如果有较多的选项,超出列表框区域而不能一次全部显示时,会自动加上滚动条。列表框最主要的特点是只能从中选择,不能直接写入或修改其内容。默认事件为SelectedIndexChanged,当SelectedIndex属性更改后发生。GetSelected方法返回一个值指示是否选定了指定项。SelectionMode属性:属性值为One表示同时只能有一个选项被选中,属性值为MultiSimple时可以用鼠标来进行多选,属性值为MultiExtended时可以用Ctrl或Shift键+鼠标进行多选。SelectedIndex属性:返回列表框中第一个选定项的下标。SelectedItem属性:返回列表框中第一个选定项,通常是字符串值。06二月20239.4常用控件介绍Items属性:获取对当前存储在列表框中的项的引用,其值是列表框中所有项的集合。“列表框名.Items.Count”返回总行数。可以通过“列表框名.Items[下标]”来获取或者设置某一项的值,可以通过它来编辑列表框中的选项,Items常用方法有:Add方法(在列表框中添加新项);Insert方法(在列表框中的指定索引位置添加新项);Clear方法(清除列表框中的所有项);Remove方法(删除列表框中相符的项);RemoveAt方法(删除列表框中指定索引位置的项)。06二月20239.4常用控件介绍(8)组合框ComboBox
组合框ComboBox是组合了文本框和列表框的特性而形成的一种控件,其作用与ListBox类似,但是占用的空间要小,常用的属性为Items,默认事件为SelectedIndexChanged。DropDownSt
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 实习实训基地合作协议合同范本
- 企业间的战略合作伙伴合同
- 全职劳动合同参考合同
- 5守株待兔(教学设计)-2023-2024学年语文三年级下册统编版
- Unit 1 How can I get there?Part B(教学设计)-2024-2025学年人教PEP版英语六年级上册
- 常年法律顾问服务合同
- 11 浮力 第二课时 教学设计-2024-2025学年科学四年级上册苏教版
- 建筑项目材料检测委托合同
- 中保人寿瑞祥养老保险合同范本
- 标准化苗木购销合同范本详解
- 《恒瑞医药股权激励实施方案探析综述》6200字
- 傅佩荣论语三百讲(1-300讲)汇编
- 统编版一年级下册语文全册完整课件
- 《植树问题(两端都栽)》教学实录-2024-2025学年人教版五年级数学上册
- 智能 检测与监测 技术-智能建造技术专01课件讲解
- 2024年心理咨询师题库【综合题】
- 教育部《中小学校园食品安全和膳食经费管理工作指引》知识培训
- 石油工程设计大赛采油单项组
- 辽宁中考语文2024年真题考点全面解读
- 2025年高考语文复习知识清单第十章作文专题11:漫画作文写作指导(学生版+解析)
- 中国肥胖及代谢疾病外科治疗指南(2024版)
评论
0/150
提交评论