C#第八章.ppt

上传人:wj 文档编号:9417061 上传时间:2023-05-18 格式:PPT 页数:58 大小:611.50KB
下载 相关 举报
C#第八章.ppt_第1页
第1页 / 共58页
C#第八章.ppt_第2页
第2页 / 共58页
C#第八章.ppt_第3页
第3页 / 共58页
C#第八章.ppt_第4页
第4页 / 共58页
C#第八章.ppt_第5页
第5页 / 共58页
C#第八章.ppt_第6页
第6页 / 共58页
C#第八章.ppt_第7页
第7页 / 共58页
C#第八章.ppt_第8页
第8页 / 共58页
C#第八章.ppt_第9页
第9页 / 共58页
C#第八章.ppt_第10页
第10页 / 共58页
C#第八章.ppt_第11页
第11页 / 共58页
C#第八章.ppt_第12页
第12页 / 共58页
C#第八章.ppt_第13页
第13页 / 共58页
C#第八章.ppt_第14页
第14页 / 共58页
C#第八章.ppt_第15页
第15页 / 共58页
C#第八章.ppt_第16页
第16页 / 共58页
C#第八章.ppt_第17页
第17页 / 共58页
C#第八章.ppt_第18页
第18页 / 共58页
C#第八章.ppt_第19页
第19页 / 共58页
C#第八章.ppt_第20页
第20页 / 共58页
亲,该文档总共58页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

C#第八章.ppt

《C#第八章.ppt》由会员分享,可在线阅读,更多相关《C#第八章.ppt(58页珍藏版)》请在冰点文库上搜索。

C#第八章.ppt

第8章常见窗体控件的使用,主要内容,C#常用控件的使用定制控件,8.1Windows控件,本章中我们将要介绍以下控件:

windows窗体Button控件TextBox控件RadioButton与CheckBox控件ListBox控件ListBox控件ListView控件ToolStrip控件StatusStrip控件StatusStrip控件,windows窗体,创建空白窗体创建空白窗体的操作如下:

(1)在VisualStudio.NET开发环境中,选择【文件】|【新建】|【项目】命令,弹出新建项目对话框。

(2)在【项目类型】列表框中,选中【VisualC#项目】,并在右边的【模版】列表框中,选中【Windows应用程序】选项,然后在该对话框下方的【名称】文本框中,输入该项目的名称,如“MyFirstWindowsApplication”,在【位置】文本框中,输入保存该项目的位置,也可单击【浏览】按钮来选定保存位置,如下页图所示。

单击【确定】按钮,在VisualStudio.NET的编辑窗口中将显示一个空白窗体,设置窗体属性,在窗体上任意位置单击,选中要设置属性的窗体选择【视图】|【属性窗口】命令,在VisualStudio.NET开发窗口右侧就会出现一个属性窗口,也可以右键单击窗体,选择【属性】命令,也可以出现属性窗口。

在属性窗口中,列出了该窗体当前的各项属性,可以进行相应设置。

不同的属性在属性窗口中的设置方式也有所不同,用户可以直接输入属性值(例如Size、Location和Text等属性)、从下拉列表中选择一个值(FormBorderStyle和StartPosition)或者执行更加复杂的操作。

控件的公有属性、事件和方法,.NET中的大多数控件都派生于System.Windows.Forms.Control类。

因此,我们在介绍其它各个控件之前,先来介绍一下Control这个类,Control类实现了所有窗体交互控件的基本功能:

处理用户键盘输入、处理消息驱动、限制控件大小等等。

Control类的属性、方法与事件是所有窗体控件所公有的,我们在程序设计过程中经常会遇到,所以掌握好Control类的成员可以为以后的窗体编程打下坚实的基础。

1.Control类的属性,1.Control类的属性,1.Control类的属性,控件常见的属性及其用法,

(1)Text属性每一个控件都有Text属性,是给用户查看或者输入的。

Name属性虽然也是每个控件对象都有的,不过它却是给程序员看的,常在编程中使用,作为每个控件的名字用于被程序员控制与操作。

Text属性在很多控件中都是经常使用的。

例如:

在标签框中显示的文字、在编辑框中用户输入的文字。

同样,在程序中也可以直接访问Text属性,用来获取和设置Text的值,这样就可以实现在程序运行过程中修改标题的名称,获取用户输入的数据等功能。

(2)Capture属性Capture属性如何设为真,则不管鼠标是否在此控件的范围内,鼠标都被限定为只由此控件响应。

(3)Anchor和Dock属性在设计窗体时,这两个属性非常实用,.NET中通过对这两个属性的设置,实现了用户改变窗口大小,却同时确保窗口看起来不显得很乱。

Anchor属性用于指定在用户重新设置窗口的大小时控件该如何响应。

可以指定如果控件重新设置了自己的大小,就根据控件自己的边界锁定它,或者其大小不变,但应根据窗口的边界来锚定它的位置。

Dock属性与Anchor属性是相关的。

可以使用该属性指定控件应停放在容器的边框上。

如果用户重新设置了窗口的大小,该控件将继续停放在窗口的边框上。

2.Control类的方法,2.Control类的方法,3.Control类的事件,Button控件,几乎所有的Windows对话框中都存在按钮控件,对于按钮的处理比较简单,通常是在窗体上添加控件,再双击它,给Click事件添加代码。

使用Button控件的一个例子,例8.1Button控件的Click事件演示。

程序操作步骤:

(1)在VisualStudio.NET开发环境中,选择【文件】|【新建】|【项目】命令,弹出新建项目对话框。

(2)在【项目类型】列表框中,选中【VisualC#项目】,并在右边的【模版】列表框中,选中【Windows应用程序】选项,然后在该对话框下方的【名称】文本框中,输入该项目的名称,如“ButtonTest”,在【位置】文本框中,输入保存该项目的位置,也可单击【浏览】按钮来选定保存位置。

(3)单击【确定】按钮,在VisualStudio.NET的编辑窗口中将显示一个空白窗体。

(4)打开工具箱,双击Button控件一次,在属性面板上选择Name属性改为btn_Example,Text属性改为“事例”,效果图如下页图所示。

程序代码,usingSystem;usingSystem.Collections.Generic;usingSystem.ComponentModel;usingSystem.Data;usingSystem.Drawing;usingSystem.Text;usingSystem.Windows.Forms;namespaceButtonTestpublicpartialclassForm1:

FormpublicForm1()InitializeComponent();privatevoidbtn_Example_Click(objectsender,EventArgse)MessageBox.Show(你好,你单击了Button按钮!

);,运行结果,TextBox控件,文本框(TextBox)经常用于获取用户输入或显示文本,通常用于可编辑文本,也可以设定其成为只读控件。

文本框能够显示多行数据,并添加基本的格式设置。

Text属性是文本框最重要的属性,要显示的文本就包含在Text属性中。

Text属性可以在设计窗口时使用属性窗口设置,也可以在运行时用代码设置或者通过用户输入设置,同样也可以在运行时通过读取Text属性来获得文本框的当前内容。

TextBox控件的常用属性,TextBox控件常用的事件,RadioButton与CheckBox控件,单选按钮(RadioButton)通常成组出现,用于为用户提供两个或多个互相排斥的选项,如下图所示。

单选按钮和后来将要介绍的复选框(CheckBox)控件类似,但也存在重要的区别,即从一组单选按钮中必须且只能选择一个,而在一组复选框中这可以同时选择多个选项。

把单选按钮组合在一起,使它们创建一个逻辑单元,此时必须使用GroupBox控件。

首先在窗体上拖放一个GroupBox控件(组框),再把需要的RadioButton按钮放在组框的边界内,RadioButton按钮知道如何改变自己的状态,以反应组框中唯一被选中的选项。

RadioButton与CheckBox控件,复选框(CheckBox)指示某特定条件是打开的还是关闭的。

当用户希望选择一个或多个选项时,就需要使用复选框。

一个复选框如下图所示。

RadioButton控件属性,RadioButton控件事件,CheckBox控件属性,CheckBox控件事件,一个关于RadioButton控件以及CheckBox控件的使用的简单例子,程序界面,程序代码,usingSystem;usingSystem.Collections.Generic;usingSystem.ComponentModel;usingSystem.Data;usingSystem.Drawing;usingSystem.Text;usingSystem.Windows.Forms;namespaceRadioComBoExamplepublicpartialclassForm1:

FormpublicForm1()InitializeComponent();privatevoidbutton1_Click(objectsender,EventArgse)stringname=this.textBoxName.Text;stringsex=radioButtonMan.Checked?

radioButtonMan.Text:

radioButtonWoman.Text;stringcourse=;if(this.checkBoxEnglish.Checked)course=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;privatevoidtextBoxName_Validating(objectsender,CancelEventArgse)if(this.textBoxName.Text.Trim()=)MessageBox.Show(名字一栏输入为空,请重新输入!

);textBoxName.Clear();textBoxName.Focus();,程序运行结果,若在姓名处的TextBox中不输入任何东西,则会弹出如下图所示的提示。

ListBox控件,列表框用于显示一组字符串,可以一次从中选择一个或多个选项。

例如,在设计期间,如果不知道用户要选择的数值个数,或者列表中的值非常多的时候,就应考虑使用列表框。

ListBox控件属性,ListBox控件常见方法,ListBox控件常见事件,ComboBox控件,与ListBox不同,组合框(ComboBox)从来都不能在列表中选择多个选项,但可以在ComboBox的TextBox部分输入新选项。

通常,组合框比ListBox节省空间,因为组合框中可见的部分只有文本框和按钮部分。

ComboBox控件属性,ComboBox控件事件,ListView控件,ListView是Windows列表视图控件,用于显示来自应用程序、数据库或文本文件的信息或者获取来自用户的信息。

在标准列表视图对话框中可以进行各种查看操作,如:

图标、详细视图等。

列表视图通常用于显示数据,用户可以对这些数据和显示方式进行某些控件,可以把包含在控件中的数据显示为列和行,或者显示为一列,或者先是为图标形式。

ListView控件的主要属性就是Items,该属性是一个包含控件所显示的项的集合,可用于在列表视图中的添加和移除项。

SelectedItems属性则包含控件中当前选定项的集合。

如何将MultiSelect属性设置为True,用户就可以同时选择多项。

ListViewItem类用于表示列表视图中的项,这些项可以包含子项,子项包含与父项相关的信息。

在应用程序中,我们经常使用方法和事件为列表视图提供附加功能。

BeginUpdate和EndUpdate方法用于为列表视图添加许多项,而且在每次添加项时并不显示控件的重新绘制,这样就提高了性能。

ListView控件属性,ListView控件方法,ListView控件事件,8.2用户自定义控件,虽然VisualStudio.NET附带了大量的控件,但仍不能满足各个应用程序的特殊需要。

比如说,VisualStudio.NET自带的控件不能以我们希望的方式绘制自己,或者控件只能以某种方式使用,而我们却希望把控件的功能和界面一起封装,或者需要的控件不存在。

此时,我们就需要自己开发一个新的控件。

自定义控件基本思想是允许开发人员生成新的功能,把现有的控件聚集到一个公共控件上,使之可以在应用程序种重复使用,或通过组织在多个应用程序种重复使用。

为此,Microsoft提供了创建满足需要的控件方式。

VisualStudio.NET提供了一个工程类型WindowsControlLibrary,使用它可以创建自己的控件。

开发定制控件的三种方法,1.从Windows窗体控件继承2.从UserControl类继承3.从Control类继承,定制控件示例-从UserControl类继承,下面的示例说明了如何通过组合控件的方式来自定义控件。

本示例将Label和Timer两个控件绑定到一起,实现通过标签显示系统当前时间,每秒刷新一次。

(1)在VisualStudio.NET中创建一个新的C#工程,选择Windows控件库,把新工程命名为ClockLib,如下图所示。

(2)单击设计界面,打开控件的属性。

找到UserControl1.cs把名称改为Clock.cs。

(3)打开控件设计器的代码,找到publicpartialclassStringOfButton:

UserControl。

默认情况下,用户控件从系统提供的UserControl类继承。

UserControl类提供所有用户控件所要求的功能,并实现标准方法和属性。

(4)在用户控件中加入标签和计时器两个控件。

在“解决方案资源管理器”中,切换到Clock控件设计器,在“工具箱”中单击“所有Windows窗体”选项卡,然后为Clock控件设计器添加一个Label,名为Label1的标签控件被添加到用户控件设计器上的控件中。

选中timer1控件,切换到“事件窗口”,双击“Tick”,为time1控件添加一个timer1_Tick事件。

切换到代码编辑器,找到timer1_Tick事件的代码,将代码修改如下:

protectedvirtualvoidtimer1_Tick(objectsender,EventArgse)/在标签中显示当前的时间lblDisplay.Text=System.DateTime.Now.ToLongTimeString();修饰符从Private更改为Protected,用Virtual关键字修改该方法使其可被重写。

(5)从“文件”菜单中,选择“全部保存”命令来保存项目。

(6)生成控件。

在“生成”菜单中单击“生成ClockLib”命令,输出窗体提示生成是否成功。

(7)创建测试项目。

由于定制的控件不是独立的项目,它们必须寄宿在容器中。

因此,必须提供一个运行该控件的测试项目,来进行测试控件。

右键单击击解决方案,选择“添加/新建项目”命令,而后在弹出的窗口中选择“VisualC#项目”节点,然后单击“Windows应用程序”,在“名称”框中输入testClockLib,单击“确定”按钮,如下图所示。

(8)添加引用后,需要将新控件添加到工具箱。

右键单击“工具箱”,然后从快捷菜单中选择“选择项”以打开如下图所示的“选择工具箱项”对话框。

然后选择“.NETFramework组件”选项卡并单击“浏览”按钮。

找到“ClockLibbindebug”目录并选择“ClockLib.dll”文件,使Clock出现在“选择工具箱项”对话框的组建列表中。

(9)将Clock控件添加到testClockLib的窗体设计器上,并调整到适当的大小。

窗体中显示一个名为“clock1”的定制控件。

(10)在解决方案资源管理器中,右键单击testClockLib然后从快捷菜单中选择“设为启动项目”。

(11)按F5键运行该项目,出现Form1。

效果图如下页图所示:

小结,本章首先介绍了Windows应用程序常用的控件,及其相关的属性、方法和事件,开发人员可以使用这些控件编写复杂的应用程序,使用这些控件进行开发,可以减少开发者很多的重复性工作。

.NET允许开发者自己根据实际需求创建出先的控件,并提供了三种常用的定制控件开发方式,我们根据需要,来选择一种合适自己的定制方式。

谢谢,

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

当前位置:首页 > 幼儿教育 > 幼儿读物

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2