第9章Windows应用程序设计基础课件.ppt

上传人(卖家):晟晟文业 文档编号:4146838 上传时间:2022-11-14 格式:PPT 页数:88 大小:1.20MB
下载 相关 举报
第9章Windows应用程序设计基础课件.ppt_第1页
第1页 / 共88页
第9章Windows应用程序设计基础课件.ppt_第2页
第2页 / 共88页
第9章Windows应用程序设计基础课件.ppt_第3页
第3页 / 共88页
第9章Windows应用程序设计基础课件.ppt_第4页
第4页 / 共88页
第9章Windows应用程序设计基础课件.ppt_第5页
第5页 / 共88页
点击查看更多>>
资源描述

1、第9章Windows应用程序设计基础-基本控件 9.3 窗体控件概述控件是包含在窗体上的对象,是构成用户界面的基本元素,也 是C#可视化编程的重要工具。使用控件可使程序的设计简化 避 免大量重复性工作,简化设计过程,有效地提高设计效率。对于一个程序开发人员而言,必须掌握每类控件的功能、用途,并掌握其常用的属性、事件和方法。22022-11-14C#程序设计实用教程 9.3 窗体控件概述在VS2005中,工具箱中包含了建立应用程序的各种控件。工具箱分为Windows窗体、公共控件、容器、菜单和工具栏、数据、组件、打印、对话框等部分,常用的Windows窗体控件放在“Windows窗体”选项卡下。

2、工具箱中有数十个常用的Windows窗体控件,它们以图标的方式显示在工具箱中,其名称显示于图标的右侧。32022-11-14C#程序设计实用教程 9.3 窗体控件概述在介绍具体控件之前,首先在此探讨一下各个控件共有的属性、事件和方法。在C#中,所有的窗体控件,比如标签控件、文本框控件、按钮控件等全部都是继承于:System.Windows.Forms.Control。作为各种窗体控件的基类,Control类实现了所有窗体交互控件的基本功能。Control类的属性、方法和事件是所有窗体控件所公有的,而且其中很多是在编程中经常会遇到的。42022-11-14C#程序设计实用教程 9.3 窗体控件概

3、述(1 1)ControlControl类的属性类的属性Control类的属性描述了一个窗体控件的所有公共属性,可以在属性(Properties)窗口中查看或修改窗体控件的属性。常用的属性如下:lName属性每一个控件都有一个Name(名字)属性,在应用程序中,可通过此属性来引用这个控件。C#会给每个新添加的控件指定一个默认名。在应用程序设计中,可根据需要将控件的默认名字改成更有实际代表意义的名字。52022-11-14C#程序设计实用教程 9.3 窗体控件概述lText属性在C#中,每一个控件对象都有Text属性。Text属性在很多控件中都有重要的意义和作用。例如,在标签控件中显示的文字、在

4、文本框中用户输入的文字、组合框和窗体中的标 题 等都是用控件的Text进行设定的。对于Text属性的设置过程及设置结果如图9-9、9-10所示。62022-11-14C#程序设计实用教程 9.3 窗体控件概述lAnchor属性Anchor的意思是“锚”,那么Anchor属性是用来确定此控件与其容器控件的固定关系的。在此,所谓容器控件是指什么呢?顾名思义,容器控件就是像一般的容器一样可以存放别的控件的控件!例如,窗体控件中会包含很多的控件,像标签控件、文本框等。这时,称包含控件的控件为容器控件或父控件,而里面的控件为子控件。显然,这必然涉及到一个问题,即子控件与父控件的位置关系问题。即当父控件的

5、位置、大小变化时,子控件按照什么样的原则改变其位置、大小。Anchor属性就用于设置此原则。72022-11-14C#程序设计实用教程 9.3 窗体控件概述对于Anchor属性,可以设定Top、Bottom、Right、Left中任意的几种,设置的方法非常直观,如图9-11所示。82022-11-14C#程序设计实用教程 9.3 窗体控件概述图9-11中选中变黑的方位即为设定的控件方位,图中所示的方位为Top、Left、Bottom。此时,如果容器控件变化,子控件将保证其上边缘与容器上边的距离、左边缘与容器左边的距离,底边与容器底边的距离。其运行效果如图9-12所示。92022-11-14C#

6、程序设计实用教程 9.3 窗体控件概述lDock属性Dock属性规定了子控件与父控件的边缘依赖关系。Dock的效果,如图9-13所示。10Dock的值有6种,分别是Top、Bottom、Left、Right、Fill,最后还有默认值None。一旦Dock值被设定,子控件就会发生变化与父控件选定的边缘相融在一起。2022-11-14C#程序设计实用教程 9.3 窗体控件概述(2 2)ControlControl类的方法类的方法可以调用Control类的方法来获得控件的一些信息,或者设置控件的属性值及行为状态。例如:Focus方法可设置此控件获得的焦点;Refresh方法可重画控件;Select方

7、法可激活控件;Show方法可显示控件等。112022-11-14C#程序设计实用教程 9.3 窗体控件概述(3 3)ControlControl类的事件类的事件在C#中,当用户进行某一项操作时,会引发某个事件的发生,此时就会调用事件处理程序代码,实现对程序的控制。事件驱动实现是基于窗体的消息传递和消息循环机制的。在C#中,所有的机制都被封装在控件之中,极大方便了编写事件的驱动程序。如果希望能够更加深入地操作,或定义自己的事件,就需要联合使用委托(Delegate)和事件(Event),可以灵活地添加、修改事件的响应,并自定义事件的处理方法。例如,Control类的可响应的事件有:单击时发生的C

8、lick事件;双击时发生的DoubleClick事件;取得焦点时发生的GetFocus事件;鼠标移动时发生的MouseMove事件等。122022-11-14C#程序设计实用教程 9.4 常用控件窗体是由一个个控件构成的,因此熟悉控件是进行合理、有效的程序开发的重要前提。本节内容将针对Windows窗体应用程序中常见的控件进行详细介绍。132022-11-14C#程序设计实用教程9.4.1 按钮控件按钮(Button)是用户与应用程序交互的最常用的工具。它用于接收用户的操作信息,去执行预先规定的命令,触发相应的事件过程,以实现指定的功能。1.1.常用属性常用属性(1 1)TextText属性属

9、性该属性用于设定按钮上显示的文本。该属性也可为按钮创建快捷方式,其方法是在作为快捷键的字母前加一个“&”字符,则在程序运行时,命令按钮上该字母带有下划线,该字母就成为快捷键。例如,某个按钮的Text属性设置为“&Display”,程序运行时,就会显示为“Display”。142022-11-14C#程序设计实用教程9.4.1 按钮控件9.4.1 按钮控件(2 2)FlatStyleFlatStyle属性属性该属性指定了按钮的外观风格,它有4个可选值。分别是:Flat、Popup、System、Standard。该属性的默认值为Standard。(3 3)ImageImage属性属性用于设定在按

10、钮上显示的图形。(4 4)ImageAlignImageAlign属性属性当图片显示在命令按钮上时,可以通过ImageAlign属性调节其在按钮上的位置。(5 5)EnableEnable属性属性用于设定控件是否可用,不可用,则用灰色表示。(6 6)VisibleVisible属性属性用于设定控件是否可见,不可见,则隐藏。注意:注意:上述的属性中,前4项为外观属性;而后2项为行为属性。152022-11-14C#程序设计实用教程9.4.1 按钮控件9.4.1 按钮控件2.2.响应的事件响应的事件如果按钮具有焦点,就可以使用鼠标左键、Enter键或空格键触发该按钮的Click事件。当使用Show

11、Dialog方法显示窗体时,可以使用按钮的DialogResult属性指定ShowDialog的返回值。【例例9-79-7】按钮控件的运用。(1 1)为窗体Form1添加一个计数器nCounter,并添加3个按钮控件,分别完成递增计数器、递减计数器、通过消息框提示计数器的值的功能,并添加1个Label控件来显示每次运算后的计数器值。完成的窗体界面如图9-14所示。162022-11-14C#程序设计实用教程9.4.1 按钮控件9.4.1 按钮控件(2 2)设置窗体和各控件的属性,如表9-2所示。172022-11-14C#程序设计实用教程9.4.1 按钮控件9.4.1 按钮控件(3 3)切换到

12、代码窗口,创建事件过程:private int nCounter;/第一次加载时,进行计数器和lblResult的初始化private void Form1_Load(object sender,EventArgs e)this.nCounter=50;this.ShowCounter();/进行递增操作,并提示新值private void btnInc_Click(object sender,EventArgs e)this.nCounter+;this.ShowCounter();182022-11-14C#程序设计实用教程9.4.1 按钮控件9.4.1 按钮控件/进行递减操作,并提示新值

13、private void btnDes_Click(object sender,EventArgs e)this.nCounter-;this.ShowCounter();/通过MessageBox提示当前的值 private void btnMsg_Click(object sender,EventArgs e)string strMsg=当前计数器+this.nCounter.ToString(D8);MessageBox.Show(strMsg,提示);192022-11-14C#程序设计实用教程9.4.1 按钮控件9.4.1 按钮控件/显示计数器值到Label控件lblResult p

14、rivate void ShowCounter()string strMsg=this.nCounter.ToString(D8);this.lblResult.Text=strMsg;202022-11-14C#程序设计实用教程9.4.1 按钮控件9.4.1 按钮控件程序运行结果如图9-15所示。212022-11-14C#程序设计实用教程9.4.1 按钮控件9.4.2标签控件标签(Label)主要用来显示文本。通常用标签来为其他控件显示说明信息、窗体的提示信息,或者用来显示处理结果等信息。但是,标签显示的文本不能被直接编辑。除了显示文本外,标签还可使用Image属性显示图像,或使用Imag

15、eIndex和ImageList属性组合显示图像。222022-11-14C#程序设计实用教程9.4.2 标签控件9.4.2标签控件1.1.常用属性常用属性(1 1)TextText属性属性该属性用于设定标签显示的文本,可通过TextAlign属性设置文本的对齐方式。(2 2)BorderStyleBorderStyle属性属性该属性用于设定标签的边框形式,共有3个设定值,分别是None、FixedSingle、Fixed3D。该属性的默认值为None。(3 3)BackColorBackColor属性属性用于设定标签的背景色。(4 4)ForeColorForeColor属性属性用于设定标签

16、中文本的颜色。(5 5)FontFont属性属性用于设定标签中文本的字体、大小、粗体、斜体、删除线等。232022-11-14C#程序设计实用教程9.4.2 标签控件9.4.2标签控件(6 6)ImageImage属性属性用于设定标签的背景图片,可通过ImageAlign属性设置图片的对齐方式。(7 7)EnableEnable属性属性用于设定控件是否可用,不可用,则用灰色表示。(8 8)VisibleVisible属性属性用于设定控件是否可见,不可见,则隐藏。(9 9)AutoSizeAutoSize属性属性用于设定控件是否根据文本自动调整,设置为true表示自动调整。注意:注意:上述的属性

17、中,前6项为外观属性;而后3项为行为属性。242022-11-14C#程序设计实用教程9.4.2 标签控件9.4.2标签控件2.2.响应的事件响应的事件标签控件常用的事件有:Click事件和DoubleClick事件。252022-11-14C#程序设计实用教程9.4.2 标签控件9.4.2标签控件【例例9-39-3】标签控件的运用。对窗体上的3个标签控件的参数进行设置,用来显示文本。程序代码如下:private void Form1_Load(object sender,EventArgs e)/label1参数设置,默认字体为宋体9号、前景色为黑色 this.label1.AutoSize

18、=true;this.label1.BackColor=System.Drawing.Color.White;this.label1.Text=宋体9号白底黑字;262022-11-14C#程序设计实用教程9.4.2 标签控件9.4.2标签控件 /label2参数设置,默认字体为宋体9号、前景色为黑色 this.label2.AutoSize=true;this.label2.BackColor=System.Drawing.Color.Black;this.label2.Font=new System.Drawing.Font(宋体,10.5F,System.Drawing.FontStyl

19、e.Regular,System.Drawing.GraphicsUnit.Point,(byte)(134);this.label2.ForeColor=System.Drawing.Color.White;this.label2.Text=宋体10号黑底白字“;272022-11-14C#程序设计实用教程9.4.2 标签控件9.4.2标签控件 /label3参数设置 this.label3.AutoSize=true;this.label3.BackColor=System.Drawing.Color.Blue;this.label3.Font=new System.Drawing.Fon

20、t(楷体_GB2312,14.25F,System.Drawing.FontStyle.Regular,System.Drawing.GraphicsUnit.Point,(byte)(134);this.label3.ForeColor=System.Drawing.Color.Red;this.label3.Text=楷体14号蓝底红字;282022-11-14C#程序设计实用教程9.4.2 标签控件9.4.2标签控件程序运行结果如图9-16所示。292022-11-14C#程序设计实用教程9.4.2 标签控件9.4.3 文本框控件在C#中,文本框(TextBox)是最常用的和最简单的文本

21、显示和输入控件。文本框有两种用途,一是可以用来输出或显示文本信息;二是可以接受从键盘输入的信息。1.1.常用属性常用属性(1 1)TextText属性属性该属性用于设定文本框显示的文本,可通过TextAlign属性设置文本的对齐方式。(2 2)BackColorBackColor属性属性用于设定文本框的背景色。(3 3)ForeColorForeColor属性属性用于设定文本框中文本的颜色。302022-11-14C#程序设计实用教程9.4.3 文本框控件9.4.3 文本框控件(4 4)FontFont属性属性用于设定文本框中文本的字体、大小、粗体、斜体、删除线等。(5 5)PasswordC

22、harPasswordChar属性属性文本框控件以密码输入方式使用,输入字母用该属性指定字符屏蔽。(6 6)EnableEnable属性属性用于设定文本框控件是否可用,不可用,则用灰色表示。(7 7)VisibleVisible属性属性用于设定文本框控件是否可见,不可见,则隐藏。(8 8)ReadOnlyReadOnly属性属性用于设定文本框控件是否只读。(9 9)MultiLineMultiLine属性属性用于设定文本框控件是否包多行文本。注意:注意:上述的属性中,前5项为外观属性;而后4项为行为属性。312022-11-14C#程序设计实用教程9.4.3 文本框控件9.4.3 文本框控件2

23、.2.常用的方法常用的方法(1 1)ClearClear方法方法用于清除文本框中已有的文本。(2 2)AppendTextAppendText方法方法用于文本框最后追加文本。322022-11-14C#程序设计实用教程9.4.3 文本框控件9.4.3 文本框控件3.3.常用的事件常用的事件在文本框控件所能响应的事件中,TextChanged、Enter和Leave是常用的事件。(1 1)TextChangedTextChanged事件事件当文本框的文本内容发生变化时,触发该事件。当向文本框输入信息时,每输入一个字符,就会引发一次TextChanged事件。(2 2)EnterEnter事件事件

24、当文本框获得焦点时,就会引发的事件。(3 3)LeaveLeave事件事件当文本框失去焦点时,就会引发的事件。332022-11-14C#程序设计实用教程9.4.3 文本框控件9.4.3 文本框控件【例例9-99-9】文本框控件的运用。实现步骤如下:(1)为窗体Form1添加2个TextBox控件:tbInput和tbHint,前者可编辑单行文本,用来获取用户输入;后者用于显示数据,应设置为只读多行文本。同时,再添加1个Label控件lblCopy,用来显示输入文本框中数据。342022-11-14C#程序设计实用教程9.4.3 文本框控件9.4.3 文本框控件(2)在此例中,通过程序代码设置

25、相应的控件的属性。主要程序代码如下:private void Form1_Load(object sender,EventArgs e)/设置2个文本框的属性 this.tbInput.ForeColor=Color.Blue;this.tbHint.BackColor=Color.White;this.tbHint.ForeColor=Color.Green;this.tbHint.ReadOnly=true;352022-11-14C#程序设计实用教程9.4.3 文本框控件9.4.3 文本框控件private void tbInput_Enter(object sender,EventAr

26、gs e)/光标进入清除原有文本 this.tbInput.Clear();private void tbInput_Leave(object sender,EventArgs e)/焦点退出,将文本添加到tbHint新的一行 this.tbHint.AppendText(this.tbInput.Text+Environment.NewLine);362022-11-14C#程序设计实用教程9.4.3 文本框控件9.4.3 文本框控件private void tbInput_TextChanged(object sender,EventArgs e)/将当前tbInput中文本内容同步显示到

27、lblCopy中 this.lblCopy.Text=this.tbInput.Text;注意:注意:在tbInput_Leave事件中将编辑好的文本通过方法TextBox.AppendText()追加tbHint中;在tbInput_TextChanged事件中将tbInput中最新的文本同步显示到lbCopy控件上。程序运行结果如图9-17所示。372022-11-14C#程序设计实用教程9.4.3 文本框控件9.4.4 单选按钮控件单选按钮(RadioButton)控件为用户提供由两个或多个互斥选项组成的选项集。当用户选中某单选项按钮时,同一组中的其他单选项按钮不能同时选定,该控件以圆圈

28、内加点的方式表示选中。单选按钮用来让用户在一组相关的选项中选择一项,因此单选按钮控件总是成组出现。直接添加到一个窗体中的所有单选按钮将形成一个组。若要添加不同的组,必须将它们放到面板或分组框中。将若干RadionButton控件放在一个GroupBox控件内组成一组时,当这一组中的某个单选按钮控件被选中时,该组中的其他单选控件将自动处于不选中状态。382022-11-14C#程序设计实用教程9.4.4 单选按钮控件9.4.4 单选按钮控件1.1.常用属性常用属性(1 1)TextText属性属性该属性用于设置单选按钮旁边的说明文字,以说明单选按钮的用途。(2 2)CheckCheck属性属性表

29、示单选按钮是否被选中,选中则Checked值为True,否则为False。2.2.响应的事件响应的事件单选按钮响应的事件主要是Click事件和CheckedChanged事件。当鼠标单击单选按钮时,触发Click事件,并且改变Checked属性值。Checked属性值的改变,同时将触发CheckedChanged事件。392022-11-14C#程序设计实用教程9.4.4 单选按钮控件9.4.4 单选按钮控件【例例9-109-10】单选按钮控件的运用。通过选择不同的单选按钮,实现在文本框中显示不同水果的价格。实现步骤如下:(1)创建如图9-18所示的窗体。402022-11-14C#程序设计实

30、用教程9.4.4 单选按钮控件9.4.4 单选按钮控件(2)设置窗体和各控件的属性,如表9-3所示。412022-11-14C#程序设计实用教程9.4.4 单选按钮控件9.4.4 单选按钮控件(3)打开代码窗口,编写事件过程。private void rdoApple_CheckedChanged(object sender,EventArgs e)txtPrice.Text=10.0;private void rdoBanana_CheckedChanged(object sender,EventArgs e)txtPrice.Text=8.5;422022-11-14C#程序设计实用教程9

31、.4.4 单选按钮控件9.4.4 单选按钮控件private void rdoPineapple_CheckedChanged(object sender,EventArgs e)txtPrice.Text=12.5;432022-11-14C#程序设计实用教程9.4.4 单选按钮控件9.4.5复选框控件复选按钮(CheckBox)控件,它与单选按钮一样,也给用户提供一组选项供其选择。但它与单选按钮有所不同,每个复选框都是一个单独的选项,用户既可以选择它,也可以不选择它,不存在互斥的问题,可以同时选择多项。1.1.常用属性常用属性(1)Text属性。该属性用于设置复选框旁边的说明文字,以说明复

32、选框的用途。(2)Check属性。表示复选框是否被选择。True表示复选框被选择,False表示复选框未被选择。442022-11-14C#程序设计实用教程9.4.5 复选框控件9.4.5复选框控件(3)CheckState属性。反映该复选框的状态,有3个可选值。Checked:表示复选框当前被选中。Unchecked:表示复选框当前未被选中。Indeterminate:表示复选框当前状态未定,此时该复选框呈灰色。2.2.响应的事件响应的事件复选框响应的事件主要是Click事件、CheckedChanged事件和CheckStateChanged事件。当鼠标单击复选框时,触发Click事件,并

33、且改变Checked属性值和CheckState属性值。Checked属性值的改变,同时将触发CheckedChanged事件;CheckState属性值的改变,同时将触发CheckStateChanged事件。452022-11-14C#程序设计实用教程9.4.5 复选框控件9.4.5复选框控件【例例9-119-11】复选框控件的运用。通过选择不同的复选框,实现输出选中的业余爱好。实现步骤如下:(1)创建一个Windows窗体应用的程序,添加如图9-19所示的控件。(2)编写“确定”按钮btnOk和“退出”btnExit的代码。其中“确定”按钮功能为显示一个对话框,输出用户用户所填内容;“退

34、出”按钮功能为结束程序。462022-11-14C#程序设计实用教程9.4.5 复选框控件9.4.5复选框控件472022-11-14C#程序设计实用教程9.4.5 复选框控件9.4.5复选框控件(3)程序的完整代码如下:using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Text;using System.Windows.Forms;namespace UseCheckBox public pa

35、rtial class Form1:Form 482022-11-14C#程序设计实用教程9.4.5 复选框控件9.4.5复选框控件 public Form1()InitializeComponent();/检查用户输入的信息是否有效private void txtName_Validating(object sender,CancelEventArgs e)if(txtName.Text.Trim()=string.Empty)MessageBox.Show(姓名为空,请重新输入!);txtName.Focus();492022-11-14C#程序设计实用教程9.4.5 复选框控件9.4.5

36、复选框控件 private void btnExit_Click(object sender,EventArgs e)this.Close();502022-11-14C#程序设计实用教程9.4.5 复选框控件9.4.5复选框控件 private void private void btnOk_Click(objectbtnOk_Click(object sender,sender,EventArgsEventArgs e)e)string string strUserstrUser=string.Emptystring.Empty;strUserstrUser=姓名:姓名:+txtName.

37、TexttxtName.Text+n;+n;strUserstrUser=strUserstrUser+业余爱好:业余爱好:+(+(chkMovie.CheckedchkMovie.Checked?电电影影 :)+:)+(chkMusic.CheckedchkMusic.Checked?音乐音乐 :)+:)+(chkSport.CheckedchkSport.Checked?体育体育 :)+n;:)+n;DialogResultDialogResult result=result=MessageBox.Show(strUserMessageBox.Show(strUser,信息确认信息确认,M

38、essageBoxButtons.OKCancelMessageBoxButtons.OKCancel,MessageBoxIcon.InformationMessageBoxIcon.Information,MessageBoxDefaultButton.Button1);MessageBoxDefaultButton.Button1);if(result=if(result=DialogResult.OKDialogResult.OK)txtName.CleartxtName.Clear();();chkMovie.CheckedchkMovie.Checked=false;=false;

39、chkMusic.CheckedchkMusic.Checked=false;=false;chkSport.CheckedchkSport.Checked=false;=false;512022-11-14C#程序设计实用教程9.4.5 复选框控件9.4.5复选框控件 private void btnExit_MouseEnter(object sender,EventArgs e)txtName.CausesValidation=false;private void btnExit_MouseLeave(object sender,EventArgs e)txtName.CausesVal

40、idation=true;522022-11-14C#程序设计实用教程9.4.5 复选框控件9.4.5复选框控件单击“信息确认”对话框中的“确定”按钮,将会清除已输入的内容,包括复选框的选中状态。53 程序运行,输入相应的内容,如图9-20所示。单击“确定”按钮后,弹出的对话框如图9-21所示。2022-11-14C#程序设计实用教程9.4.5 复选框控件9.4.5复选框控件说明:说明:代码中用到了MessageBox的另一个构造方法,这种方法使得MessageBox的外观更加多样化,包括了MessageBox的标题(Title)、图标(MessageBoxIcons)的按钮(MessageB

41、oxButtons)。另外,程序中还编写了btnExit的Enter和Leave事件,目的是为了在单击“退出”按钮时,不引发TextBox控件的Validating事件,防止多余的提示;在Leave事件中又恢复TextBox控件的Validating事件。读者可以先删除该段代码,以查看相应的效果。542022-11-14C#程序设计实用教程9.4.5 复选框控件9.4.6 列表框列表框(ListBox)控件提供一个项目列表,用户可以从中选择一项或多项。在列表框内的项目称为列表框,列表项的加入是按一定的顺序进行的,这个顺序号称为索引号。列表框内列表项的索引号是从0开始的,即第一个加入的列表项索引

42、号为0,其余索引项的索引号依次类推。552022-11-14C#程序设计实用教程9.4.6 列表框9.4.6 列表框1 1常用属性常用属性(1 1)ItemsItems属性属性通过该属性,设置或获取列表框的项。用户可以事先在属性窗口中设置,也可以在程序中进行设置。(2 2)MulticolumnMulticolumn属性属性用于设置列表框是否多列列表框,默认值为False,表示列表项一单列显示。562022-11-14C#程序设计实用教程9.4.6 列表框9.4.6 列表框(3 3)SelectionModeSelectionMode属性属性该属性用于设定列表框选择属性,共有4个可选值:Non

43、e:表示不允许进行选择。One:表示只允许选择其中一项。此值为默认值。MultiSimple:表示允许同时选择多个列表项。MultiExtended:用鼠标和Shift键组合可以选择连续的列表项;用鼠标和Ctrl键组合可以选择不连续的列表项。572022-11-14C#程序设计实用教程9.4.6 列表框9.4.6 列表框(4 4)SelectedItemSelectedItem属性属性获取或设置列表框中的当前选定项。(5 5)SelectedItemsSelectedItems属性属性获取或设置列表框中当前选定项的集合。(6 6)SelectedIndexSelectedIndex属性属性获取

44、或设置列表框中的当前选定项的从零开始的索引。在编程时,用户可以捕获该属性值,然后根据该值来进行相应的动作。注意:注意:上述的属性中,前2项为外观属性;而后4项为行为属性。582022-11-14C#程序设计实用教程9.4.6 列表框9.4.6 列表框2.2.响应的事件响应的事件列表框控件除了能响应常用的Click、DoubleClick、GotFocus、LostFocus等事件外,还可响应特有的SelectedIndexChanged事件。SelectedIndexChanged事件:当用户改变列表中的选择时,将会触发此事件。592022-11-14C#程序设计实用教程9.4.6 列表框9.

45、4.6 列表框3.3.常用的方法常用的方法列表框的列表项可以在属性窗口中通过Item属性来设置,也可以在应用程序中用Items.Add或Items.Insert方法来添加,用Items.Remove或Items.Clear方法删除。(1 1)Items.AddItems.Add方法方法Items.Add方法的功能是把一个列表项加入列表框的底部。其一般格式如下:Listname.Items.Add(Item)其中,Listname是列表控件的名称;Items是要加入列表框的列表框,必须是一个字符串表达式。602022-11-14C#程序设计实用教程9.4.6 列表框9.4.6 列表框(2 2)I

46、tems.InsertItems.Insert方法方法Items.Insert方法的功能是把一个列表项插入到列表框的指定位置。其一般格式如下:Listname.Items.Insert(Index,列表项)其中,Index是新增列表项在列表框中的指定位置。Index值为0时,表示列表项添加到列表框的第一个位置。(3 3)Items.RemoveItems.Remove方法方法Items.Remove方法的功能是清除列表框中的指定列表项。其一般格式如下:Listname.Items.Remove(Item)612022-11-14C#程序设计实用教程9.4.6 列表框9.4.6 列表框()()I

47、tems.ClearItems.Clear方法方法Items.Clear方法的功能是清除列表框中的所有列表项。其一般格式如下:Listname.Items.Clear()622022-11-14C#程序设计实用教程9.4.6 列表框9.4.6 列表框【例例9-129-12】列表框控件的运用。(1)创建一个Windows窗体应用程序,在窗体上添加如图9-22所示的控件。其中,ListBox控件名称如图所示,4个按钮的名称依次为btnRight、btnRightAll、btnLeftAll和btnLeft。(2)更改lstLeft控件的Items属性,弹出如图9-23所示的字符串集合编辑器。依次输

48、入星期日、星期一、星期二、星期三、星期四、星期五和星期六。单击“确定”按钮,得到如图9-24所示的窗体。(3)编写各个按钮的代码,功能为使得ListBox控件的选项在lstLeft和lstRight控件之间移动,并将记录输出到lstBottom列表框控件中。632022-11-14C#程序设计实用教程9.4.6 列表框9.4.6 列表框642022-11-14C#程序设计实用教程9.4.6 列表框9.4.6 列表框(4)完整的程序代码如下:using System;using System.Collections.Generic;using System.ComponentModel;usin

49、g System.Data;using System.Drawing;using System.Text;using System.Windows.Forms;namespace UseListBox public partial class Form1:Form 652022-11-14C#程序设计实用教程9.4.6 列表框9.4.6 列表框 public Form1()InitializeComponent();662022-11-14C#程序设计实用教程9.4.6 列表框9.4.6 列表框 private void btnRight_Click(object sender,EventAr

50、gs e)if(lstLeft.SelectedItems.Count=0)return;else lstRight.Items.Add(lstLeft.SelectedItem);lstBottom.Items.Add(lstLeft.SelectedItem.ToString()+被移至右侧);lstLeft.Items.Remove(lstLeft.SelectedItem);672022-11-14C#程序设计实用教程9.4.6 列表框9.4.6 列表框 private void btnRightAll_Click(object sender,EventArgs e)foreach(o

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

当前位置:首页 > 办公、行业 > 各类PPT课件(模板)
版权提示 | 免责声明

1,本文(第9章Windows应用程序设计基础课件.ppt)为本站会员(晟晟文业)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!


侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|