c控件详解+教程Word文档下载推荐.docx
《c控件详解+教程Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《c控件详解+教程Word文档下载推荐.docx(44页珍藏版)》请在冰豆网上搜索。
1.1焦点与Tab键序
在Windows环境下向计算机输入数据时,首先需要选定待输入的位置,输入
完一条项目后,可以通过鼠标单击或者使用【Tab】键来改变待输入的位置。
在Visual
C#2005中,称待输入的位置对应的对象具有焦点,而焦点在对象间移动的顺序称
为Tab键序。
1.1.1焦点
在学习VisualC#2005控件之前,首先要了解与控件紧密相关的焦点的概念。
焦点是控件接收鼠标或键盘输入的能力。
当对象具有焦点时,可以接收用户的输入,
例如:
为登录QQ而输入QQ密码时,焦点就在等待输入QQ密码的文本框上。
只有当控件的Enabled和Visible属性值均为True时,才可以接收焦点。
Enabled
属性决定控件是否响应由用户产生的事件,如键盘、鼠标事件;
Visible属性决定控
件是否可见。
但是并非所有的控件都具有接收焦点的能力,如:
GroupBox、
PictureBox、Timer等控件都不能接收焦点。
1.1.2设置焦点
使用以下方法可以使对象获得焦点:
(1)运行时用鼠标选择对象。
(2)运行时用快捷键选择对象。
在代码中使用Focus()方法,其语法格式为:
//**********************************************************************
<
对象>
.Focus();
如:
“TextBox.Focus();
”,该代码的功能是将焦点赋予文本框TextBox。
大多数
控件得到和失去焦点时的外观是不相同的,如:
(1)按钮控件得到焦点后周围会出现一个虚线框。
(2)文本框得到焦点后会出现闪烁的光标。
1.1.3程序运行时改变焦点的方法
程序运行时,可以使用下列方法之一改变焦点:
(1)用鼠标单击对象;
(2)使用快捷键选择对象;
(3)按Tab键或Shift+Tab键在当前窗体的各对象之间巡回移动焦点。
1.1.4Tab键序
Tab键序是指当用户按下Tab键时,焦点在控件间移动的顺序,每个窗体都有
自己的Tab键序。
默认状态下的Tab键序跟添加控件的顺序相同。
例如在窗体上先后添加了3个
命令按钮Button1、Button2和Button3,则程序启动后Button1首先获得焦点,当
用户按下Tab键时,焦点依次转移向Button2、Button3,然后再回到Button1,如
此循环。
具有焦点的控件有两个控制Tab键序的属性,分别是TabIndex和TabStop
属性。
1.TabIndex属性
TabIndex属性决定控件接收焦点的顺序,VisualC#2005按照控件添加的顺序
依次将0、1、2、3、……分配给相应控件的TabIndex属性。
用户在运行程序时
按下Tab键,焦点将根据TabIndex属性值在控件之间转移。
如果希望更改Tab
键序,可以通过设置TabIndex属性来更改。
例如希望焦点直接从Button1转移到Button3,然后再到Button2,则应该将
Button2和Button3的TabIndex属性值互换。
注意:
不能获得焦点的控件及无效或不可见的控件,不具有TabIndex属性,
因而不包含在Tab键序中,按Tab键时这些控件将被跳过。
2.TabStop属性
TabStop属性决定焦点是否能够在该控件上停留。
它有True和False两个属性
值,默认为True;
如果设为False,则焦点不能停在该控件上。
例如希望Button2不能接收焦点,只要将Button2的TabStop属性设为False
即可,(代码为:
Button2.TabStop=false;
),这样在按Tab键时将跳过Button2控
件,但是它仍然保留在Tab键序中的位置。
1.2Form
窗体(Form)是Windows应用程序界面的最大容器,它可以容纳其他的一些
控件,使用它和其他的Windows控件可以设计出美观的用户界面,下面将介绍窗
体的生成方法及其常用的属性、方法和事件。
1.2.1生成Form
每当用户创建一个新的Windows应用程序时,VisualC#2005会自动生成一个
名为Form1的窗体,如图1-1所示。
可以通过鼠标的拖拽方法改变窗体的大小,也
可以通过窗体的Size属性来修改。
图1-1自动生成的Form1窗体
很多情况下,一个窗体满足不了应用程序的要求,如学生信息管理应用程序,
既要对学生的基本情况进行管理,又要对学生的修读课程以及成绩进行管理等,这
时仅使用一个窗体是不合理的。
可以通过【项目】→【添加Windows窗体】菜单命令来为应用程序添加一个
新的窗体,如图1-2所示。
图1-2添加窗体
在【名称】后面的文本框中输入新窗体的名称,单击【打开】按钮,新的窗体
即生成了,同时可以看到窗体设计器上方多出了一个新生成窗体的选项卡。
1.2.2Form常用的属性、方法与事件
在VisualC#2005中,一切都是对象,窗体当然也不例外,下面就介绍窗体的
一些常用的属性、方法和事件。
1.MaximizeBox和MinimizeBox属性
MaximizeBox和MinimizeBox属性用于确定窗体标题栏的右上角的最大化、
最小化按钮是否可用。
它们均有两个值:
True和False。
True表示最大化、最小化
按钮可用,为默认值;
False表示不可用。
如图1-3表示窗体的最大化按钮不可用
的情况,即将其MaximizeBox属性设置成了False。
图1-3最大化按钮不可用
可以直接在窗体对象的属性窗口中找到“MaximizeBox”属性,然后直接在其
中进行设置,如图1-4所示。
图1-4设置MaximizeBox属性
也可以在程序运行时,使用代码来设置窗体的MaximizeBox属性,其结果与
在属性窗口中直接设置一致。
this.MaximizeBox=false;
2.Size属性
Size属性又分成Width和Height两个属性(分别表示窗体的宽度和高度),
用于设置窗体的大小,以像索为单位。
一般情况下可以通过鼠标的拖拽来控制窗体
的大小,但如果要精确控制窗体的大小,则应该使用Size属性。
如将Size属性值
设为“300,200”,则表示该窗体的宽为300像素、高为200像素。
3.StartPosition属性
StartPosition属性用于确定窗体第一次出现时的位置。
它提供了5个属性值:
默认的属性值为0-Manual,窗体的初始位置由Location属性确定;
1-CenterScreen,
窗体的初始位置为屏____________幕中心;
2-WindowsDefaultLocation,窗体定位在Windows
的默认位置,其尺寸在窗体大小中指定;
3-WindowsDefaultBounds,窗体定位在
Windows的默认位置,其边界也由Windows默认确定;
4-CenterParent,窗体在
其父窗体中居中。
4.AutoSizeMode属性
AutoSizeMode属性用于确定用户是否可以使用鼠标托拽来改变窗体的大小,
它有“GrowOnly”和“GrowAndShrink”两个值,“GrowOnly”为默认值,表示
用户可以使用鼠标托拽来改变窗体的大小,而“GrowAndShrink”则表示用户不可
以使用鼠标托拽来改变窗体的大小。
5.Icon属性
Icon属性用于设置窗体左上角的小图标,可以直接在属性窗口中设置,也可以
通过代码设置,使用代码设置的语法为:
System.Drawing.Bitmap.FromFile(IconPath)
说明:
“IconPath”表示Icon图标的存放路径。
6.Font属性
Font属性用于设置窗体上字体的样式、字形、大小等。
若选择Font属性,单
击该属性右边的按钮,将弹出【字体】对话框如图1-5所示。
图1-5【字体】对话框
7.Text属性
Text属性用于设置窗体标题栏显示的文本,其默认值为“Form”加上一个整
数,如“Form1”、“Form2”等。
8.Enabled属性
Enabled属性用于确定窗体是否响应用户的事件。
它有True和False两个值,
其默认值为True,如果设为False,则除了可以移动该窗体的位置、调整大小、关
闭或者最大化最小化外,不能操作窗体内的控件等,这些控件对用户的操作完全不
予响应。
使用代码设置该属性的语法为:
Form.Enabled=true;
//或者Form.Enabled=false;
9.Visible属性
Visible属性表示窗体是否可见,它有True和False两个值,默认值为True;
如果设为False,则窗体不可见。
Form.Visible=true;
//或者Form.Visible=false;
10.ControlBox属性
ControlBox属性用于控制当程序运行时,窗体的标题栏中是否显示关闭、最大
化和最小化按钮,是否显示系统图标和系统菜单。
它有True和False两个属性值,
图1-6分别表示该属性值为True和False的情况。
图1-6具有与不具有系统菜单的窗体
11.Show方法
Show方法表示显示窗体,其语法为:
Form.Show();
//Form为窗体名称
12.Hide方法
Hide方法表示隐藏窗体,其语____________法为:
Form.Hide();
13.Load事件
Load为载入事件,当窗体载入时触发该事件,并执行相应的代码。
例如运行
某应用程序时,窗体Form1显示,则触发了Form1的Load事件。
14.Activated事件
Activated为激活事件,当窗体被激活时触发该事件,并执行相应的代码。
例
如在不同窗体之间进行切换时,变成活动窗体触发了该窗体的Activated事件。
15.Click事件
Click为单击事件,单击该窗体时触发该事件,并执行相应的代码。
1.3Button控件
命令按钮(Button)是一种很常用的控件,主要用于接收用户的单击(Click)
事件。
当用户用鼠标单击或用Enter键按下命令按钮时,都会触发Click事件,从
而执行相应的代码,达到某种特定操作的目的。
命令按钮具备控件所共有的基本属性,这里不在赘述,仅介绍一下Text属性。
Text属性用于设置显示在命令按钮上的文本,可以在文本前面加上“&
”字符来设
置快捷键(热键)。
将按钮的Text属性设为“&
OK”,该按钮的效果为:
,
则“O”将被作为热键,按下Alt+O将触发命令按钮的Click事件。
1.4ListBox控件
如果需要向用户提供包含一些选项和信息的列表,由用户从中进行选择,可以
使用列表框(ListBox)和组合框(ComboBox)。
但两者在使用中是不相同的。
(1)列表框:
任何时候都能看到多个选项;
(2)组合框:
平时只能看到一个选项,单击组合框右端的下拉箭头可以打
开多个选项的列表。
本节介绍列表框控件,组合框控件将在下一节进行详细的介绍。
1.4.1ListBox的常用属性、方法和事件
列表框控件通过显示多个选项,供用户选择其中一项,达到与用户对话的目的。
如果选项较多,超出控件显示范围,则会自动加上垂直滚动条。
列表框控件常用的
属性、方法和事件如下。
1.Items属性
Items属性表示列表框的列表集合,单击右边的按钮可以编辑该列表框的
列表项,如图1-7所示(列表项1~12表示一年中的12个月)。
图1-7列表框的列表项字符串编辑器
2.SelectedIndex属性
SelectedIndex属性返回选中的列表项的索引号。
列表框中的每一个列表项都对
应着一个索引号,第一项对应的索引号为0、第二项的为1、第三项的为2、第四项
的为3、……,依此类推。
if(listBox.SelectedIndex==6)//索引号6表示第7项
{
MessageBox.Show("
该月属于秋季"
);
//7月份为秋季
}
3.SelectedItem属性
SelectedItem属性返回选中的列表项的文本内容。
if(listBox.SelectedItem.ToString()=="
6"
)//选中6月份
该月属于夏季"
//6月份为夏季
4.Count属性
Count属性用于返回列表框中列表项的个数。
表达式“listBox.Items.Count-1”
表示列表中最后一项的索引号。
5.Sorted属性
Sorted属性控制列表项是否按字母实现排序。
它有True和False两个值,默
认为False,按列表项的添加顺序排序;
如果设为True,则按字母顺序排序。
6.Add方法
Add方法把一个项目加入到列表框中。
其语法格式为:
ListBox.Items.Add(<
字符串表达式>
)
表示要添加的列表项。
当Sorted属性为False时,用Add方
法添加的项被放置在末尾;
当Sorted属性为True时,则按字母顺序排序。
例如,希望在如图1-7所示的列表框listBox中添加一个列表项“13”,则可以
使用如下代码实现:
ListBox.Items.Add("
13"
7.Insert方法
Insert方法把一个项目加入到列表框中的指定索引处。
ListBox.Items.Insert(<
索引号>
<
例如下面的语句表示将“13”作为列表项的第3项(索引号为2,即表示第3
项)添加到列表框中。
ListBox.Items.Insert(2,"
Insert方法只有在Sorted属性为False时才能把列表项添加到指定的位
置。
8.Clear方法
Clear方法可以移除列表框中所有的列表项。
//********************