配色: 字号:
第八章 WINDOWS控件
2012-01-19 | 阅:  转:  |  分享 
  
本章主要内容8.1控件概述 8.2文本类控件 8.3动作类型控件 8.4列表类型控件8.5值类型控件 8.6图形类类
控件 8.7日期类控件 8.8其他类型控件 例:本示例实现的是当程序运行时,单击【隐藏控件】标签时,欢迎教师节
标签隐藏;此时【隐藏控件】标签变为【显示控件】标签,单击显示控件,欢迎教师节重现。单击【退出程序】标签程序退出。运行界面:
程序主要代码如下:privatevoidlabel3_Click(objectsender,
EventArgse){if(this.label2.Visible==tr
ue){this.label2.Hide();
this.label3.Text="显示控件";return;
}if(this.label2.Visible==false){
this.label2.Visible=true;this.l
abel3.Text="隐藏控件";return;}
}程序主要代码如下:(程序位置:C#程序\08\8.2.2\01)privatev
oidlinkLabel1_LinkClicked(objectsender,LinkLabelLinkClickedEve
ntArgse){//通过设置LinkVisited属性为真来改变连接文本的颜色
linkLabel1.LinkVisited=true;//调用Proces
s.Start方法来通过一个URL打开默认的浏览器System.Diagnostics.Process.
Start("http://www.Microsoft.com");}例一:在TextBox中输入信息,按【确
定】按钮把TextBox中的信息在Label中显示出来,按【清空】清空TextBox和Label中的信息。运行界面:
程序主要代码:privatevoidbutton1_Click(objectsender,E
ventArgse){label1.Text=textBox1.Text;
}privatevoidbutton2_Click(objectsender,EventAr
gse){label1.Text=textBox1.Text=string.
Empty;}例子:本例子把RichTextBox框体内的文字设置为红色,在选定文字后在Label标签中显示。
运行界面:例子:本例子中有两个分组框(GroupBox),分别为选择方式和显示方式,用来控制列表框中的选择方式,并把选中的信息
在Lable控件中显示出来。运行界面:程序主要代码:privatevoidlistBox
1_SelectedIndexChanged(objectsender,EventArgse){
label1.Text="";//如果是单选,则使用SelectedItem返回所选
项if(listBox1.SelectedIndices.Count==1)
label1.Text=listBox1.SelectedItem.ToString();
else{//如果是多选,则使用SelectedItems返回所有的
所选项for(inti=0;iCount;i++)label1.Text+=listBox1.SelectedI
tems[i].ToString()+"";}}
privatevoidradioButton1_CheckedChanged(objectsender,EventArg
se){if(radioButton1.Checked==true)
listBox1.SelectionMode=SelectionMode.None;
}privatevoidradioButton2_CheckedChanged(objectsender,
EventArgse){if(radioButton2.Checked==t
rue)listBox1.SelectionMode=SelectionMode.One;
}privatevoidradioButton3_CheckedChanged(object
sender,EventArgse){if(radioButton3.Chec
ked==true)listBox1.SelectionMode=SelectionMo
de.MultiSimple;}privatevoidradioButton
4_CheckedChanged(objectsender,EventArgse){
if(radioButton4.Checked==true)listBox1.Sele
ctionMode=SelectionMode.MultiExtended;}privat
evoidradioButton5_CheckedChanged(objectsender,EventArgse)
{if(radioButton5.Checked==true)
listBox1.MultiColumn=false;}privatevoid
radioButton6_CheckedChanged(objectsender,EventArgse)
{if(radioButton6.Checked==true)/
/把列表框设为多列显示listBox1.MultiColumn=true;
}主要代码如下(程序位置:C#程序\08\8.4.4\01):privatevoidFo
rm1_Load(objectsender,EventArgse){TreeNo
detn1=treeView1.Nodes.Add("爱好");TreeNodentn1=n
ewTreeNode("足球");TreeNodentn2=newTreeNode("篮球")
;tn1.Nodes.Add(ntn1);tn1.Nodes.Add(ntn2
);}privatevoidtreeView1_AfterSel
ect(objectsender,TreeViewEventArgse){tex
tBox1.Text=treeView1.SelectedNode.Text;}
privatevoidbutton1_Click(objectsender,EventArgse){
if(treeView1.SelectedNode.Text=="姓名"||treeView1.
SelectedNode.Text=="班级"||treeView1.SelectedNode
.Text=="爱好"||treeView1.SelectedNode.Text=="性别")
MessageBox.Show("请选择子节点");elset
reeView1.Nodes.Remove(treeView1.SelectedNode);
}privatevoidbutton2_Click(objectsender,EventA
rgse){treeView1.ImageList=imageList1;
imageList1.ImageSize=newSize(16,16);tr
eeView1.ImageIndex=1;treeView1.SelectedImageIndex
=0;}例子:本例使用Checked属性判断复选框是否选中,并给出提示信息,在用户选择后把信息在RichTex
tBox控件中显示出来。运行界面:privateintx1=0,y1=0;
publicForm1(){InitializeComponent();
}privatevoidForm1_Load(objectsender,EventArg
se){this.timer1.Enabled=true;
this.timer1.Interval=100;}privatev
oidtimer1_Tick(objectsender,EventArgse){
x1+=1;y1+=1;if(x1+10>=700)
x1=0;if(y1+10>=500)
y1=0;Pointnewxy=newPoint(x1,y1);
this.DesktopLocation=newxy;}privatevoid
pictureBox1_Click(objectsender,EventArgse){
Application.Exit();}例子:本例子为当单击【显示时间信息】按钮时在TextBox控件
中显示时间信息,当单击【显示日历】按钮时出现日历,并且【显示日历】按钮变为【收起日历】,单击即可收起日历。当单击日历下的【以黑体显
示今天日期】按钮时当天的日期会以黑体显示。当单击【改变日期格式】按钮时刻改变多种日期的格式。运行界面:8.5值类型控件8.
5.1CheckBox控件CheckBox控件指定某个特定条件是处于打开状态还是处于关闭状态,它常用于为用户提供“是/否”
或者是“真/假”选项。CheckBox控件的常用属性:(1)Text属性:设置控件的标题文字。(2)TextAlign属性
:控件中标题文字对齐方式(3)BackColor属性:设置控件的背景色。(4)ForeColor属性:设置控件的前景色。(5
)Font属性:设置控件包含的文字的字体。(6)Visible属性:设置复选框控件是否可见。(7)Checked属性:复选框按
钮是否被选中。CheckBox控件的常用事件:(1)Click事件:单击复选框时,被触发(2)CheckedChanged
:点击复选框时被触发8.5.2RadioButton控件RadioButton控件,即单选按钮,它为用户提供由两个或多
个互斥的选项集。虽然单选按钮和复选框的功能看似类似,但实际上却存在差异。当用户选择某个单选按钮时,同一组中的其他单选按钮不能同时选
定,而在复选框中可以。RadioButton控件的常用事件:(1)Click事件:当用户单击按钮时,将触发Click事件。
(2)CheckedChanged事件:当Checked属性值更改时,将触发CheckedChanged事件。RadioB
utton控件常用属性:(1)Text属性:设置控件的标题文字。(2)TextAlign属性:设置控件中标题文字的对齐方式。
(3)CheckAlign属性:设置控件中的单选按钮在复选框中的位置。(4)FlatStyle属性:设置按钮的样式。(5)
Checked属性:单选按钮是否被选中。8.5.3CheckedListBox控件CheckedListBox控件扩
展了ListBox控件,它几乎能完成列表框可以完成的所有任务,并且可以在列表中的旁边显示复选标记。CheckedListBox
控件常用属性:CheckedItems属性:此属性是指CheckedListBox控件中所有选中项的集合。Items属性:
向控件中添加项。主要代码(见课本)8.6图形类类控件8.6.1PictureBox控件PictureBox控件即
为图片框。可以加载到此控件上的图像文件格式有:位图文件(.bmp)、图标文件(.ico)、图元文件(.wmf)、JPEG(.jpg
)和GIF图像文件(.gif)。PictureBox控件常用的属性:(1)Image属性:设置控件显示的图像。(2)Im
ageLocation属性:获取或设置要在图片框中显示的图像的路径。PictureBox控件常用的方法:(1)Load方
法:加载图像到图片框中。(2)CreateGraphics方法:为控件创建一个Graphics对象。PictureBox控
件常用的事件:(1)Click事件:单击PictureBox控件时发生。(2)LoadCompleted事件:在异步图像加载操
作完成、取消或引发异常时发生。(3)LocationChanged事件:在Location属性值更改后发生。例一:此例子为在
运行时图片在屏幕上运动,当点击图片时程序结束。运行界面:8.7日期类控件8.7.1DateTimePicker控件
用户可以从日期或者时间列表中选择单个选项,用来表示日期。该控件显示为两个部分:一部分为下拉列表(以文本形式表示的日期),另一部分为
网格(在单击列表的向下箭头时显示)。DateTimePicker控件常用的属性:(1) Checked属性:当ShowSel
ectedBox为True时确定是否选中复选框,指示用户选择了某个值。(2) Value属性:此属性是指当前控件的日期或时间值。
8.7.2MonthCalenar控件MonthCalendar控件为用户查看和设置日期提供了一个直观的图形界面。该控
件以网格的形式显示日历,网格包含月份的编号日期,这些日期排列在周一到周日下的7个列中,并且突出显示选定的日期范围。MonthC
alenar控件常用的属性:(1)ShowToday属性:此属性把今天的日期显示在控件的底部。(2)ShowWeekCircl
e属性:此属性设置为True,表示在日历中添加周编号。主要代码(见书本)第8章Windows控件8.1控件概述
控件直接或间接派生于System.Windows.Forms.Control基类,它负责绘制容器中的内容。(容器可以是一个窗体
,也可以是另一个控件)VisualStudio2005开发环境的常用控件大致可划分为以下7种类型:1、文本类控件
2、动作类控件3、列表类控件4、值类控件5、图形显示类控件6、日期类控件7、容器控件8.2.1Label控件8.
2文本类控件Label控件即标签控件,是Windows应用程序中最基本的控件之一。通常用于输出文本信息,但输出的信息不能编辑
。Label控件主要的属性有:(1)TextAlign属性:设置标签中文本的对齐方式。(2)AutoSize属性:设置控件
的大小是否随标题内容的大小自动调整。(3)BorderStyle属性:设置边框。(4)Visible属性:设置标签是否可见。
(5)Font属性:获取或设置标签上显示的文字的字体。(6)Text属性:修改Lable控件显示的文字。(7)ForeColo
r属性:修改前景色。(8)BackColor属性:修改背景设。LinkLabel控件和Label控件有许多的共同之
处,凡是使用Label控件的地方,都可以使用LinkLabel控件。此外,LinkLabel控件可以向窗体应用程序添加Web样式的
链接。它可以将文本的一部分设置为指向某个对象或Web页面的链接。8.2.2LinkLabel控件LinkLabel控件的常用
属性:(1)ActiveLinkColor属性:用于指定用户单击超链接时显示的颜色。(2)DisabledLinkColor
属性:用于指定表示超级链接被禁止用时的颜色。(3)LinkArea属性:用于表示必须显示为超链接的文本。(4)LinkBeha
viour属性:用于表示超链接行为。(5)LinkColor属性:用于表示超链接初始的颜色。(6)VisitedLinkCol
or属性:用于表示超链接以前访问过的颜色。(7)Dock属性:用于表示超链接在容器的布局。(8)Text属性:修改Linkla
ble控件显示的文字。例:本例子为单击【打开另一窗口】标签时打开另一窗体。运行界面:TextBox控件用于获得
用户的输入或显示文本的内容,它通常用于可编译文本,有时也可以使其成为只读控件。8.2.3TextBox控件TextBox控件
的常用属性:(1)MaxLength属性:设置文本框内最多允许输入多少字符。(2)ReadOnly属性:指示文本框中的内容是
否允许被改变。(3)MultiLine属性:指定文本框中是否允许显示和输入多行文本。(4)PasswordChar属性:字符
类型,允许设置一个字符,用于屏蔽用户在文本框中输入的内容。(5)WordWrap属性:多行文本框是否自动换行。(6)Scrol
lBars属性:多行文本框的滚动条模式。(7)Text属性:文本框中所包含的文本内容。(8)SelectedText、Sele
ctionStart和SelectionLength:用户在文本框中选定的文本,它们只能在代码中使用。8.2.4RichTex
tBox控件RichTextBox控件用于显示、输入和操作带有格式的文本。RichTextBox控件除了能够TextBox
控件的所有内容之外,它还显示字体、颜色、超级链接、从文件加载文本或者图像、撤销、重复、编辑操作、可以查找指定的字符。TextB
ox控件的常用属性:(1)SelecteText属性:表示在当前RichTextBox控件中选定的文本。(2)Selecti
onColor属性:表示当前选中的文本和当前插入点的文本颜色。(3)ZoomFactor属性:表示RichTextBox控件中
内容当前的级别或百分比。(4)Text属性:文本框中所包含的文本内容。(5)RedoActionName属性:表示当调用R
edo方法时,可再次在RichTextBox控件上执行的操作。(6)SelectionFont属性:获取或设置当前选定文本或插入
点的字体。8.3.1Button控件8.3动作类型控件Button控件允许用户通过单击来执行操作。Button控件的
常用属性:TextAlign属性:此属性的值确定Button控件上的文本对齐方式。Text属性:该属性用于修改button控件
的文本,方便用户了解该button控件的用途。Button控件方法:PerformClick方法:该方法应用Button控件
的Click事件。当需要用户在没有单击按钮时也执行Click事件中的代码时,可以使用此方法。8.4列表类型控件8.4.1L
istBox控件ListBox可以显示一个固定项目列表供用户选择一项或多项。如果项总数超出可以显示的项目数,则自动向Li
stBox控件添加滚动条。ListBox控件列表中每个元素称为项。ListBox控件的常用属性:(1)SelectionMo
de属性:列表项选择方式。取值于Selection枚举。(2)MultiColumn属性:确定列表框是否支持多列显示,当属性设置
为true的时列表框以多列形式显示项,当为false时列表框以单列多项的形式显示项。(3)Text属性:列表框中当前选定项的文本
。是一个只读属性,只可以在程序中引用。(4)Sorted属性:指示列表框中的列表项是否按字母顺序排序。(5)Items属性:是
一个集合,存储列表框中的所有项。索引从0开始,可用于查看列表框中的项。(6)SelectedItem属性:获取或设置列表框中的当
前选定项。只能在程序中使用该属性(7)SelectedIndex属性:获取当前选定项的索引。若没选定任何项,则SelectedI
ndex的值为-1,若选定为第一项则SelectedIndex的值为0,以此类推。 (8)SelectedItems属性:当列表
框允许多选时,此属性返回一个集合,该集合包含列表框中选定的所有项。(9)SelectedIndices属性:当列表框允许多选时,
此属性返回一个集合,该集合包含列表框中选定的所有项的索引。(10)SelectedValue属性:此属性表示当前选定项的值。
ListBox控件常用方法:(1)SetSelected方法:对列表项进行选择或取消选择。SetSelected(intin
dex,boolvalue)(2)Item.Add方法:向列表框添加列表项。Add(Objectitem)(3)It
em.Remove方法:从列表框中删除项。Remove(Objectvalue)(4)Item.RemoveAt方法:从列
表框中删除项。voidRemoveAt(intindex)(5)Item.Clear方法:删除列表框中的所有项。(6)
Item.Insert方法:向列表框中插入项。Insert(intindex,Objectitem)(7)FindStr
ing方法:在列表框中搜索包含特定搜索字符串的第一项。ListBox控件常用事件:SelectedIndexChanged
事件:选择不同选项时引发此事件。8.4.2ComboBox控件ComboBox控件用于在下拉组合框中显示数据,它结
合了TextBox控件和ListBox控件的功能。使用此控件时,可以在组合框中输入文本项,也可以从列表中选择项。ComboBox
控件的常用属性:(1)SelectedText属性:获取或设置组合框的文本框内所选定的文本。如果DropDownStyle属性设
置为DropDownList,则该属性值是空字符串。(2)MaxDropDownItems属性:获取或设置要在组合框的下拉部分
中显示的最大项数。取值介于1和100之间。(3)DropDownStyle属性:获取或设置组合框的样式(4)Focuse
d属性:表示组合框是否获得焦点。ComboBox控件常用事件:(1)DropDown事件:单击下拉箭头时发生。(2)Drop
DownClosed事件:组合框的下拉部分不再可见时发生。8.4.3ListView控件ListView控件可以显示
带图标的项列表,用户可以使用该控件创建类似Windows资源管理器的用户。ListView控件的常用属性:(1)FullrowSelect属性:此属性用于指定在ListView控件中单击某项时要执行的操作过程。单击某项项时,可以指定是只选择该项,还是应该选择该项所在的整行。(2)View属性:此属性指定将建列表视图的类型。视图类型主要包括:大图标、小图标、列表和详细信息。(3)Alignment属性:指定ListView各项的对齐方式。(4)Multiselect属性:此属性设为True时,表示在控件中一次可以选择多个项。(5)GridLines属性:获取或设置一个值,该值表示在包含控件中项及其子项的行和列之间是否显示网格线。8.4.4TreeView控件TreeView控件可为用户显示节点的层次结构,和在Windows操作系统的资源管理器的左窗格式中显示文件和文件夹一样。用户可根据自己的需要添加或删除父节点和子节点。ListView控件的常用属性:(1)ImageIndex属性:此属性显示节点图像的索引。(2)ImageList属性:表示可显示节点处的图像列表。(3)Nodes属性:此属性可设置TreeView控件的所有节点。(4)SelectedNode属性:此属性表示TreeView控件中当前选中的节点。(5)Showlines属性:此属性指定树视图的同级节点之间以及树节点和根节点之间是否有线。(6)ShowPlusminus属性:指示是否在父节点旁边显示加减按钮。例子:此例为添加一个TreeView控件,并在其中添加图片和文字信息,当点击【显示图标】按钮时可以把文字和图像发生关联,当选中某个信息后图片改变,并在TextBox中显示出来。当选中节点并点击【删除子节点】按钮时可以删除子节点。运行界面:
献花(0)
+1
(本文系想念大家的...首藏)