C#课件之第8章常见窗体控件的使用.ppt

上传人:啊飒飒 文档编号:11861422 上传时间:2021-10-03 格式:PPT 页数:58 大小:611.50KB
返回 下载 相关 举报
C#课件之第8章常见窗体控件的使用.ppt_第1页
第1页 / 共58页
C#课件之第8章常见窗体控件的使用.ppt_第2页
第2页 / 共58页
C#课件之第8章常见窗体控件的使用.ppt_第3页
第3页 / 共58页
C#课件之第8章常见窗体控件的使用.ppt_第4页
第4页 / 共58页
C#课件之第8章常见窗体控件的使用.ppt_第5页
第5页 / 共58页
点击查看更多>>
资源描述

《C#课件之第8章常见窗体控件的使用.ppt》由会员分享,可在线阅读,更多相关《C#课件之第8章常见窗体控件的使用.ppt(58页珍藏版)》请在三一文库上搜索。

1、第8章 常见窗体控件的使用,主要内容,C#常用控件的使用 定制控件,8.1 Windows控件,本章中我们将要介绍以下控件: windows窗体 Button控件 TextBox控件 RadioButton与CheckBox控件 ListBox控件 ListBox控件 ListView控件 ToolStrip控件 StatusStrip控件 StatusStrip控件,windows窗体,创建空白窗体 创建空白窗体的操作如下: (1)在Visual Studio .NET开发环境中,选择【文件】|【新建】|【项目】命令,弹出新建项目对话框。 (2)在【项目类型】列表框中,选中【Visual C

2、#项目】,并在右边的【模版】列表框中,选中【Windows 应用程序】选项,然后在该对话框下方的【名称】文本框中,输入该项目的名称,如“MyFirstWindowsApplication”,在【位置】文本框中,输入保存该项目的位置,也可单击【浏览】按钮来选定保存位置,如下页图所示。,单击【确定】按钮,在Visual Studio .NET的编辑窗口中将显示一个空白窗体,设置窗体属性,在窗体上任意位置单击,选中要设置属性的窗体 选择【视图】|【属性窗口】命令,在Visual Studio .NET开发窗口右侧就会出现一个属性窗口,也可以右键单击窗体,选择【属性】命令,也可以出现属性窗口。 在属性

3、窗口中,列出了该窗体当前的各项属性,可以进行相应设置。不同的属性在属性窗口中的设置方式也有所不同,用户可以直接输入属性值(例如Size、Location和Text等属性)、从下拉列表中选择一个值(FormBorderStyle和StartPosition)或者执行更加复杂的操作。,控件的公有属性、事件和方法,.NET中的大多数控件都派生于System.Windows.Forms.Control类。因此,我们在介绍其它各个控件之前,先来介绍一下Control这个类,Control类实现了所有窗体交互控件的基本功能:处理用户键盘输入、处理消息驱动、限制控件大小等等。 Control类的属性、方法与

4、事件是所有窗体控件所公有的,我们在程序设计过程中经常会遇到,所以掌握好Control类的成员可以为以后的窗体编程打下坚实的基础。,1.Control类的属性,1.Control类的属性,1.Control类的属性,控件常见的属性及其用法,(1)Text属性 每一个控件都有Text属性,是给用户查看或者输入的。Name属性虽然也是每个控件对象都有的,不过它却是给程序员看的,常在编程中使用,作为每个控件的名字用于被程序员控制与操作。 Text属性在很多控件中都是经常使用的。例如:在标签框中显示的文字、在编辑框中用户输入的文字。 同样,在程序中也可以直接访问Text属性,用来获取和设置Text的值,

5、这样就可以实现在程序运行过程中修改标题的名称,获取用户输入的数据等功能。 (2)Capture属性 Capture属性如何设为真,则不管鼠标是否在此控件的范围内,鼠标都被限定为只由此控件响应。 (3)Anchor和Dock属性 在设计窗体时,这两个属性非常实用,.NET中通过对这两个属性的设置,实现了用户改变窗口大小,却同时确保窗口看起来不显得很乱。 Anchor属性用于指定在用户重新设置窗口的大小时控件该如何响应。可以指定如果控件重新设置了自己的大小,就根据控件自己的边界锁定它,或者其大小不变,但应根据窗口的边界来锚定它的位置。 Dock属性与Anchor属性是相关的。可以使用该属性指定控件

6、应停放在容器的边框上。如果用户重新设置了窗口的大小,该控件将继续停放在窗口的边框上。,2.Control类的方法,2.Control类的方法,3.Control类的事件,Button控件,几乎所有的Windows对话框中都存在按钮控件,对于按钮的处理比较简单,通常是在窗体上添加控件,再双击它,给Click事件添加代码。,使用Button控件的一个例子,例8.1 Button控件的Click事件演示。 程序操作步骤: (1)在Visual Studio .NET开发环境中,选择【文件】|【新建】|【项目】命令,弹出新建项目对话框。 (2)在【项目类型】列表框中,选中【Visual C#项目】,并

7、在右边的【模版】列表框中,选中【Windows 应用程序】选项,然后在该对话框下方的【名称】文本框中,输入该项目的名称,如“ButtonTest”,在【位置】文本框中,输入保存该项目的位置,也可单击【浏览】按钮来选定保存位置。 (3)单击【确定】按钮,在Visual Studio .NET的编辑窗口中将显示一个空白窗体。 (4)打开工具箱,双击Button控件一次,在属性面板上选择Name属性改为btn_Example,Text属性改为“事例”,效果图如下页图所示。,程序代码,using System; using System.Collections.Generic; using Syste

8、m.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; namespace ButtonTest public partial class Form1 : Form public Form1() InitializeComponent(); private void btn_Example_Click(object sender, EventArgs e) MessageBox.Show(你好,你单击了Button按钮!); ,运行结果,T

9、extBox控件,文本框(TextBox)经常用于获取用户输入或显示文本,通常用于可编辑文本,也可以设定其成为只读控件。文本框能够显示多行数据,并添加基本的格式设置。 Text属性是文本框最重要的属性,要显示的文本就包含在Text属性中。Text属性可以在设计窗口时使用属性窗口设置,也可以在运行时用代码设置或者通过用户输入设置,同样也可以在运行时通过读取Text属性来获得文本框的当前内容。,TextBox控件的常用属性,TextBox控件常用的事件,RadioButton与CheckBox控件,单选按钮(RadioButton)通常成组出现,用于为用户提供两个或多个互相排斥的选项,如下图所示。

10、单选按钮和后来将要介绍的复选框(CheckBox)控件类似,但也存在重要的区别,即从一组单选按钮中必须且只能选择一个,而在一组复选框中这可以同时选择多个选项。 把单选按钮组合在一起,使它们创建一个逻辑单元,此时必须使用GroupBox控件。首先在窗体上拖放一个GroupBox控件(组框),再把需要的RadioButton按钮放在组框的边界内,RadioButton按钮知道如何改变自己的状态,以反应组框中唯一被选中的选项。,RadioButton与CheckBox控件,复选框(CheckBox)指示某特定条件是打开的还是关闭的。当用户希望选择一个或多个选项时,就需要使用复选框。一个复选框如下图所

11、示。,RadioButton控件属性,RadioButton控件事件,CheckBox控件属性,CheckBox控件事件,一个关于RadioButton控件以及CheckBox控件的使用的简单例子,程序界面,程序代码,using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; namespace RadioComBoExampl

12、e public partial class Form1 : Form public Form1() InitializeComponent(); private void button1_Click(object sender, EventArgs e) string name = this.textBoxName.Text; string sex= radioButtonMan.Checked?radioButtonMan.Text:radioButtonWoman.Text; string course = ; if (this.checkBoxEnglish.Checked) cour

13、se = course + checkBoxEnglish.Text+、; if (this.checkBoxMoral.Checked) course = course + checkBoxMoral.Text + 、; if (this.checkBoxLaw.Checked) course = course + checkBoxLaw.Text; this.textBoxSummary.Text = 姓名: + name + rn + 性别: + sex + rn + 选修过的课程为: + course; private void textBoxName_Validating(objec

14、t sender, CancelEventArgs e) if (this.textBoxName.Text.Trim() = ) MessageBox.Show(名字一栏输入为空,请重新输入!); textBoxName.Clear(); textBoxName.Focus(); ,程序运行结果,若在姓名处的TextBox中不输入任何东西,则会弹出如下图所示的提示。,ListBox控件,列表框用于显示一组字符串,可以一次从中选择一个或多个选项。例如,在设计期间,如果不知道用户要选择的数值个数,或者列表中的值非常多的时候,就应考虑使用列表框。,ListBox控件属性,ListBox控件常见方法

15、,ListBox控件常见事件,ComboBox控件,与ListBox不同,组合框(ComboBox)从来都不能在列表中选择多个选项,但可以在ComboBox的TextBox部分输入新选项。 通常,组合框比ListBox节省空间,因为组合框中可见的部分只有文本框和按钮部分。,ComboBox控件属性,ComboBox控件事件,ListView控件,ListView是Windows列表视图控件,用于显示来自应用程序、数据库或文本文件的信息或者获取来自用户的信息。在标准列表视图对话框中可以进行各种查看操作,如:图标、详细视图等。 列表视图通常用于显示数据,用户可以对这些数据和显示方式进行某些控件,可

16、以把包含在控件中的数据显示为列和行,或者显示为一列,或者先是为图标形式。 ListView控件的主要属性就是Items,该属性是一个包含控件所显示的项的集合,可用于在列表视图中的添加和移除项。SelectedItems属性则包含控件中当前选定项的集合。如何将MultiSelect属性设置为True,用户就可以同时选择多项。ListViewItem类用于表示列表视图中的项,这些项可以包含子项,子项包含与父项相关的信息。 在应用程序中,我们经常使用方法和事件为列表视图提供附加功能。BeginUpdate和EndUpdate方法用于为列表视图添加许多项,而且在每次添加项时并不显示控件的重新绘制,这样

17、就提高了性能。,ListView控件属性,ListView控件方法,ListView控件事件,8.2 用户自定义控件,虽然 Visual Studio.NET附带了大量的控件,但仍不能满足各个应用程序的特殊需要。比如说,Visual Studio.NET自带的控件不能以我们希望的方式绘制自己,或者控件只能以某种方式使用,而我们却希望把控件的功能和界面一起封装,或者需要的控件不存在。此时,我们就需要自己开发一个新的控件。自定义控件基本思想是允许开发人员生成新的功能,把现有的控件聚集到一个公共控件上,使之可以在应用程序种重复使用,或通过组织在多个应用程序种重复使用。为此,Microsoft提供了创

18、建满足需要的控件方式。Visual Studio.NET提供了一个工程类型Windows Control Library,使用它可以创建自己的控件。,开发定制控件的三种方法,1. 从Windows窗体控件继承 2. 从UserControl类继承 3. 从Control类继承,定制控件示例 -从UserControl类继承,下面的示例说明了如何通过组合控件的方式来自定义控件。本示例将Label和Timer两个控件绑定到一起,实现通过标签显示系统当前时间,每秒刷新一次。,(1)在Visual Studio.NET 中创建一个新的C#工程,选择Windows 控件库,把新工程命名为ClockLib

19、,如下图所示。,(2)单击设计界面,打开控件的属性。找到UserControl1.cs把名称改为Clock.cs。 (3)打开控件设计器的代码,找到public partial class StringOfButton : UserControl。默认情况下,用户控件从系统提供的UserControl类继承。UserControl类提供所有用户控件所要求的功能,并实现标准方法和属性。 (4)在用户控件中加入标签和计时器两个控件。在“解决方案资源管理器”中,切换到Clock控件设计器,在“工具箱”中单击“所有Windows窗体”选项卡,然后为Clock控件设计器添加一个Label,名为Label

20、1的标签控件被添加到用户控件设计器上的控件中。,选中timer1控件,切换到“事件窗口”,双击“Tick”,为time1控件添加一个timer1_Tick事件。切换到代码编辑器,找到timer1_Tick事件的代码,将代码修改如下: protected virtual void timer1_Tick(object sender, EventArgs e) /在标签中显示当前的时间 lblDisplay.Text = System.DateTime.Now.ToLongTimeString(); 修饰符从Private 更改为Protected,用Virtual关键字修改该方法使其可被重写。,

21、(5)从“文件”菜单中,选择“全部保存”命令来保存项目。 (6)生成控件。在“生成”菜单中单击“生成ClockLib”命令,输出窗体提示生成是否成功。 (7)创建测试项目。由于定制的控件不是独立的项目,它们必须寄宿在容器中。因此,必须提供一个运行该控件的测试项目,来进行测试控件。,右键单击击解决方案,选择“添加/新建项目”命令,而后在弹出的窗口中选择“Visual C#项目” 节点,然后单击“Windows应用程序”,在“名称”框中输入testClockLib,单击“确定”按钮,如下图所示。,(8)添加引用后,需要将新控件添加到工具箱。 右键单击“工具箱”,然后从快捷菜单中选择“选择项”以打开

22、如下图所示的“选择工具箱项”对话框。然后选择“.NET Framework组件”选项卡并单击“浏览”按钮。找到“ClockLibbindebug”目录并选择“ClockLib.dll”文件,使Clock出现在“选择工具箱项”对话框的组建列表中。,(9)将Clock控件添加到testClockLib的窗体设计器上,并调整到适当的大小。窗体中显示一个名为“clock1”的定制控件。 (10)在解决方案资源管理器中,右键单击testClockLib然后从快捷菜单中选择“设为启动项目”。 (11)按F5键运行该项目,出现Form1。效果图如下页图所示:,小结,本章首先介绍了Windows应用程序常用的控件,及其相关的属性、方法和事件,开发人员可以使用这些控件编写复杂的应用程序,使用这些控件进行开发,可以减少开发者很多的重复性工作。 .NET允许开发者自己根据实际需求创建出先的控件,并提供了三种常用的定制控件开发方式,我们根据需要,来选择一种合适自己的定制方式。,谢谢,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 科普知识


经营许可证编号:宁ICP备18001539号-1