第6章窗体、控件和组件.ppt
第6章 窗体、控件和组件,6.1 窗体与对话框6.2 控件共有的基本操作6.3 容器类控件和组件6.4 文本操作类控件6.5 选择操作类控件6.6 图像操作类控件和组件6.7 菜单、工具栏与状态栏6.8 视图操作类控件6.9 其他常用控件,界面设计举例1-动物的故事(KeyboardAndEventExample),界面设计举例2-打飞鸟(DownBird),界面设计举例3-Vista图片变换效果(vistaPictureBoxExample),界面设计举例4-XP风格的window窗体(SplitContainerExample),6.1 窗体与对话框,1、窗体应用程序的启动和停止使用Application类提供的静态方法来启动、停止应用程序。Application类提供的方法:Run方法:用于在当前线程上启动应用程序消息循环,并显示窗体。Exit方法:用于停止消息循环。DoEvents方法:用于在程序处于某个循环中时处理消息。,6.1.2 窗体的创建、显示与隐藏,1、如何在代码中打开一个新窗体 Form2 fm=new Form2();fm.Show();/或者fm.ShowDialog();2、如何在代码中关闭一个窗体 用法1:fm.Close();用法2:this.Close();用法3:Application.OpenFormsForm1.Close();3、如何隐藏一个打开的窗体(1)隐藏当前窗体:this.Hide();(2)隐藏其它窗体:Application.OpenFormsForm1.Hide();4、如何重新显示隐藏的窗体(1)显示当前窗体:this.Show();(2)显示其它窗体:Application.OpenFormsForm1.Show();,6.1.2 窗体的创建、显示与隐藏,【例6-1】演示窗体的基本用法以及如何显示和关闭窗体。部分运行效果如图:,6.1.3 窗体常用的属性,常用属性:Name:获取或设置窗体的名称,代码中通过该属性来访问窗体。BackColor:获取或设置窗体的背景色。ForeColor:获取或设置窗体上文本的前景色。Location:获取或设置以屏幕坐标表示的代表窗体左上角的坐标位置。Size:指定窗体的高度和宽度。Text:设置控件上所要显示的文本,如标签、按钮和复选框等控件上的文字。,6.1.4 窗体常用属性,设置窗体属性的途径有2种:在设计模式下利用【属性】窗口设置窗体属性。在代码编辑模式下设置窗体属性。补充例题2(FormSetExample),6.1.4 窗体位置及外观控制,StartPostion:获取或设置运行时窗体的起始位置,一般在构造函数中设置此属性。例如:this.StartPosition=FormStartPosition.Manual;this.Location=new Point(screenX,screenY);通过设置窗体的【ControlBox】属性为“True”或者“False”,可以控制是否显示最大化、最小化以及关闭按钮。除此之外,还可以通过设置窗体的【FormBorderStyle】属性控制窗体的边框样式.,6.1.4 窗体位置及外观控制,【例6-2】演示如何控制窗体的显示位置以及如何控制窗体的外观形状。设计视图如下:,运行效果如下:,6.1.5 单文档窗体和多文档窗体,Windows的窗体分为单文档窗体和多文档窗体。多文档窗体(Multi-Document Interface,MDI)是指在一个主窗体中可以包含一个或多个子窗体的窗体,主窗体称为MDI父窗体,子窗体称为MDI子窗体。【例6-3】演示MDI窗体的基本用法以及如何显示和关闭子窗体,补充例题3:MDI窗体用法,运行效果如下(MDIExample):,6.1.6 对话框,对话框用于与用户交互和检索信息。对话框分为标准对话框和自定义对话框。1MessageBox对话框 调用MessageBox类的静态Show方法来显示消息对话框。返回值是DialogResult枚举的值,其中每个值都等同于消息对话框可以显示的按钮之一。Show方法提供了多种重载形式,常用的重载形式有:public static DialogResult Show(string text)public static DialogResult Show(string text,string caption)public static DialogResult Show(string text,string caption,MessageBoxButtons buttons,MessageBoxIcon icon),6.1.6 对话框,其中:Text:在消息框中显示的文本。caption:在消息框的标题栏中显示的文本。buttons:MessageBoxButtons枚举值之一,指定在消息框中显示哪些按钮。枚举值有OK、OKCancel、YesNoCancel和YesNo。icon:MessageBoxIcon枚举值之一,指定在消息框中显示哪个图标。枚举值有None(不显示图标)、Hand(手形)、Question(问号)、Exclamation(感叹号)、Asterisk(星号)、Stop(停止)、Error(错误)、Warning(警告)和Information(信息)。Show方法的返回值是DialogResult枚举值之一。DialogResult枚举值有:None(消息框未返回值)、OK、Cancel、Yes和No。,6.1.6 对话框,6.1.6 对话框,2.ColorDialog:提供颜色选择。方法:ShowDialog()返回值:DialogResult类型3.FontDialog:提供字体选择。方法:ShowDialog()返回值:DialogResult类型用法如下:ColorDialog colorDlg=new ColorDialog();if(colorDlg.ShowDialog()=DialogResult.OK)textBox1.ForeColor=colorDlg.Color;,6.1.6 对话框,自定义窗体对话框的设计方法与设计一般窗体基本相同,不同之处是还要对自定义窗体对话框作如下处理:将窗体的【FormBorderStyle】属性更改为“FixedDialog”将窗体的【MaximizeBox】属性、【MinimizeBox】属性和【ControlBox】属性设置为“False”在窗体上放一个“确定”按钮,一个“取消”按钮。然后将窗体的【AcceptButton】属性设置为“确定”按钮,【CancelButton】属性设置为“取消”按钮。在按钮事件中,设置DialogResult类型的返回值,以便让对话框隐藏起来,6.1.6 对话框,【例6-4】自定义窗体对话框的用法。设计视图如下:,运行效果如下:,6.2 控件共有的基本操作,控件和组件相同点:均指可重复使用并且可以和其他对象进行交互的对象区别:在于控件提供了用户界面功能,而组件不提供用户界面。每个控件都是一个组件,但只有提供用户界面功能的组件才称为控件。,6.2.1 控件常用属性和基本操作,1.常用基本属性1)(Name):指定控件的名称,它是控件在当前应用程序中的唯一标识,代码通过该属性来访问控件2)Enabled:决定控件是否可用,取值为true时可用,取值为false时不可用3)Anchor属性:保持控件与边框的距离不变4)Dock属性:让控件始终紧靠边框,6.2.1 控件中常用的属性和方法,2.控件透明处理将窗体中控件的背景色设置为“Transparent”,则该控件相对于其父容器是透明的。(1)Label(2)Button【例6-5】将图像和文字叠加在同一幅背景图上,让其看起来像是一幅图。,未设置BackColor属性时的设计界面 设置BackColor属性后的界面效果,6.2.1 控件中常用的属性和方法,3控件的对齐方式和显示顺序(1)当控件的【AutoSize】属性为“False”时,利用控件的【Size】属性可以精确控制控件(2)多个控件,可以按住键同时选中多个控件,然后利用“布局”快捷工具栏中的快捷方式可以快速让各控件对齐。4控件的焦点顺序调整(1)利用布局工具栏中的“键顺序”按钮,可以在设计界面下调整焦点顺序(2)如果希望在代码中让焦点在运行开始就处于某个控件上,在窗体的Shown事件中调用Focus方法来实现。textBox1.Focus();,6.2.2 控件的锚定和停靠,1Anchor属性【Anchor】属性定义控件的定位点位置。当控件锚定到某个窗体时,如果用户调整该窗体的大小,该控件将维持它与定位点位置之间的距离不变。例如:如果一个TextBox控件锚定于窗体的左、右和底边缘,那么当用户调整该窗体的大小时,该TextBox控件将在水平方向上自动调整大小,以确保TextBox控件与该窗体右边和左边的距离不变。,6.2.2 控件的锚定和停靠,2.Dock属性【Dock】属性的用途是使控件与窗体边缘对齐。此属性指定控件在窗体中的驻留位置。【Dock】属性设置为下列值:(1)Left停靠到窗体的左侧。(2)Right停靠到窗体的右侧。(3)Top停靠到窗体的顶部。(4)Bottom停靠到窗体底部。(5)Fill占据窗体中的所有剩余空间。(6)None不在任何位置停靠,它显示在由Location属性指定的位置。举例说明,6.2.3 常用的鼠标事件和键盘事件,事件:是指由系统事先设定的、能被控件识别和响应的动作.事件驱动:Windows应用程序的设计是基于事件驱动的。事件驱动指程序不是完全按照代码文件中代码的排列顺序从上到下依次执行,而是根据用户操作触发相应的事件来执行对应的代码。一个控件可以响应多个事件,设计Windows应用程序的很多工作就是为各个控件编写需要的事件代码.,6.2.3 常用的鼠标事件和键盘事件,1.鼠标事件Click 单击鼠标左键时触发MouseDoubleClick 双击鼠标左键时触发MouseEnter 鼠标进入控件可见区域时触发MouseMove 鼠标在控件区域内移动时触发MouseLeave 鼠标离开控件可见区域时触发2.键盘事件KeyDown 按下键盘上某个键时触发KeyUp 释放键盘上的按键时触发KeyPress 在KeyDown之后KeyUp之前触发,非字符键不会触发该事件。,6.2.3 常用的鼠标事件和键盘事件,3.注意(1)KeyPress事件或鼠标事件处理程序没有提供对应的参数,判断键盘输入稍微有点麻烦,所以一般在KeyDown事件或者KeyUp事件中对用户按键进行处理(2)如果希望使键盘消息在到达窗体上的任何控件之前先被窗体接收,需要将窗体的KeyPreview属性设置为true。,6.2.3 常用的鼠标事件和键盘事件,【例6-6】演示鼠标和键盘事件的触发条件,触发顺序,并显示各个事件所传递的参数内容。设计界面如下:,补充例题4:“有本事就点我!”,运行效果(ClickMeExample):利用鼠标事件MouseEnter实现。,本章综合举例1实现要点,本章综合举例1实现要点,控件鼠标事件和键盘事件处理MouseEnter、MouseLeave、MouseClickKeyDown、KeyUp背景音乐播放SoundPlayer类,播放*.WAV格式的音乐文件常用方法:Play、PlayLooping、Stop点击动物时随机声音的播放Random随机数生成器Properties.Resource资源使用方法,6.3.1 分组控件(Panel、GroupBox),分组控件:用于对不同的控件进行分组Panel控件GroupBox控件不同:Panel控件不能显示标题但可以有滚动条而GroupBox控件可显示标题但不能显示滚动条。,6.3.2 工具提示组件(ToolTip),ToolTip组件用于在用户指向控件时显示相应的提示信息。属性窗口中设置提示信息在代码中利用ToolTip组件的SetToolTip方法直接设置其他控件的操作提示信息。,6.3.3 错误提示组件(ErrorProvider),ErrorProvider组件可以对窗体或控件上的用户输入进行验证。用MessageBox消息框,一旦用户关闭了消息框,就再也看不见错误信息ErrorProvider组件则是在相关控件(如文本框)旁显示一个闪烁的错误图标(),当用户将鼠标指针放在该错误图标上时,将出现显示错误信息字符串的工具提示。,6.3.4 定时组件(Timer),4、Timer组件:功能:主要用于设置某个时间间隔,并在每次到达设置的时间间隔时,触发指定的事件。该组件常用的属性是【Enabled】属性和【Interval】属性。【Enabled】属性表示是否启用计时,这是一个bool类型的属性,false表示停止计时,true表示开始计时;同时,该组件还提供了Start方法和Stop方法,其作用与设置【Enabled】属性的作用相同。【Interval】属性表示触发Tick事件的间隔时间,以ms为计时单位,默认为100ms。,6.3.4 定时组件(Timer),4、Timer组件(续):【例6-7】利用Timer组件和Label控件,在窗体上方显示类似电影字幕的不停向上滚动的文本,并在窗体下方显示一个简单的时钟信息。左图为设计界面,右图为运行效果。,补充例题5:变换颜色和位置的文字,演示效果如下(TextChangeExample):文字会从左到右不停的移动,并且颜色在随机变换。,补充例题5实现要点,控件位置变换Left、TopBottom、Right文本颜色随机变换随机数生成器RandomColor.FromArgb方法生成颜色进一步思考(留给学生自己完成):文本的位置变换方向:从右到左、从上到下、从下到上、按某种曲线变换?如果是其他控件呢?如果窗体的前景色、背景色变换如何实现?,补充例题6:打飞鸟游戏,运行效果如下:,补充例题6实现要点,飞鸟的显示飞鸟的移动初始位置 变换位置飞鸟被点击时消失进一步思考(功能扩展留给学生完成)统计一段时间内击中飞鸟的个数?记录玩游戏玩家的名称和当前的成绩及排行榜。,6.4.1 标签控件(Label、LinkLabel),标签类控件(Label、LinkLabel)操作控件包括:1、Label:用于提供控件或窗体的描述性文字,以便为用户提供相应的信息。常用属性:Text属性。2、LinkLabel:与Label控件的作用非常相似,不同的是LinkLabel控件以超链接的形式显示文本信息。当用户单击LinkLabel控件时,会触发LinkClicked事件。可以在LinkClicked事件中编写代码让其链接到指定的网页。常用属性:Text属性、LinkArea属性、LinkData属性,6.4.2 文本控件,1.文本框(TextBox)控件常用的基本属性1)Text:表示文本框中显示的内容。2)MaxLength:表示用户可以在文本框控件中最多键入的字符数,默认值为32767个字符。注意,由于使用的是Unicode字符,所以对中文和英文的字符计数方法是相同的,即一个英文字符的长度为1,一个汉字字符的长度也是1。3)Multiline:表示是否可以包含多行内容。4)PasswordChar:用于指定在屏蔽TextBox控件中输入的密码字符时所要使用的符号。2.TextBox控件常用的基本事件 TextChanged:表示文本框中的当前内容(Text属性值)更改时触发的操作。,6.4.2 文本操作类控件,【例6-8】演示TextBox控件、ToolTip组件和ErrorProvider组件的用法。设计界面如下:,6.4.2 文本操作类控件,2.MaskedTextBox:掩码文本框主要作用控制输入文本的格式。如果输入的内容不满足规定的格式,则拒绝用户输入。常用属性【Mask】属性,用于设置当前掩码文本框输入字符的格式。,6.4.2 文本操作类控件,3.RichTextBox:主要功能是进行高级文本输入和编辑,作为一般的文本输入,其属性、事件与TextBox控件的属性、事件大致相同。它可以完成与Microsoft Word相似的复杂文字处理功能,比如改变文本、段落的显示格式,在文本中查找特定字符和字符串等,可以保存图像内容。常用属性(1)SelectionFont 表示当前选中文本或所要输入文本的字体、大小、效果等(2)SelectionColor 表示当前选中文本或所要输入文本的颜色,6.5.1 列表控件(ListBox、ComboBox),1、列表类控件(ListBox控件、ComboBox控件)(1)ListBox(列表框)控件和ComboBox(下拉框)控件均用于显示一组条目,以便操作者从中选择一条或者多条信息,并对其进行相应的处理。(2)常用的属性和方法ItemsSelectedIndex、SelectedItemSelectedItemsCount Items.AddItems.AddRangeItems.Remove、Items.RemoveAtItems.Clear,6.5.1 列表控件(ListBox、ComboBox),1ListBox控件的其他属性MutiColumn属性:决定是否可以以多列的形式显示各项。SelectionMode属性:选择列表项的方式。None:不能选择任何条目;One:每次只能选择一个条目;MultiSimple:每次可以选择一个条目或者多个条目,单击对应条目即被选中,再次单击取消选中;MultiExtended:每次可以选择一个条目或者多个条目,仅用鼠标单击各条目时,每次选择一个条目;使用组合键(如或键)配合时,可以选择多个条目。HorizontalScrollbar属性:获取或设置一个值(true或者false),该值指示是否在控件中显示水平滚动条。,6.5.1 列表控件(ListBox、ComboBox),2、ComboBox控件的其他属性ComboBox控件是TextBox和ListBox组合出来的结果。该控件包含了两个部分:顶部是一个允许用户键入列表项的文本框(TextBox)和文本框右边带有向下箭头的按钮组合出来的结果 DropDownStyle属性:表示组合框的显示样式,它有3种选择形式。Simple:同时显示文本框和列表框,文本框可以被编辑。DropDown:只显示文本框,隐藏列表框,且文本框可以被编辑。DropDownList:只显示文本框,隐藏列表框,但文本框不可以被编辑。MaxDropDownItems属性:设置打开列表框时所显示的最大条目数。,6.5.1 列表控件(ListBox、ComboBox),【例6-9】设计一个简单的选修课程修改界面,从可选项中选择课程添加到选修的课程列表内。如果可选项中没有提供所选课程,允许用户直接键入新课程,并自动将键入的新课程添加到供选择的课程中。设计界面如下:,6.5.2 复选框控件,1.CheckBox控件(1).三种状态(2).常用属性 Checked属性:true,false CheckState属性:Checked、Unchecked和Indeterminate ThreeState属性 Text属性(3).常用事件 CheckedChanged事件,6.5.2 复选框控件,1.CheckBox控件【例6-10】设计一个窗体,让用户选择球类参赛项目,要求用一个复选框表示是否参加所有比赛项目,如果只参加了部分球赛项目,该复选框用“不确定”状态表示。设计界面如下:,6.5.2 复选框控件,2CheckedListBox控件适用场合:当窗体中所需的复选框选项较多时,或者需要在运行时动态地决定有哪些选项时,使用此控件比较方便。常用属性、方法(1)Items属性:项的集合。(2)Count属性:项的数目。(3)CheckedItems属性:获取选中项的集合。(4)CheckedIndices属性:获取选中项索引的集合。(4)MultiColumn属性:true或false。(5)GetItemChecked方法:获取指定项是否被选中。(6)SetItemChecked方法:设置某个复选框的选中状态。,6.5.2 复选框控件,2CheckedListBox控件【例6-11】设计一个简单的课程选择界面,演示CheckedListBox控件的用法。左图为设计界面,右图为运行效果。,补充例题:CheckedListBox用法,运行效果如下:,6.5.3 RadioButton控件,1.特点:(1)单选(2)以各自所在的容器来划分组,如果在一个窗体上创建多个单选按钮组,可以使用GroupBox或者Panel控件作为容器。2.与CheckBox相比,RadioButton控件除了是单选外,其他用法与CheckBox用法相同。,6.5.3 RadioButton控件,【例6-12】演示RadioButton控件的用法。设计界面如下:,6.5.4 日期选择控件,1.DateTimePicker控件用于对日期(年月日)和时间(时分秒)进行处理,该控件提供一个可选择的日期范围,供用户选择/编辑日期或时间。2.常用属性1)Text属性2)Value属性3)Format属性 4)ShowUpDown属性:如果希望利用该控件仅让用户编辑时间(时分秒),需要将它的【ShowUpDown】属性设置为“True”,并将其【Format】属性设置为“Time”。5)CustomFormat属性:指定日期时间格式字符串,6.5.4 日期选择控件,【例6-13】演示DateTimePicker控件的用法。,设计界面如下:,运行界面如下:,6.6 图像操作类控件,1.PictureBox控件功能:PictureBox控件用于显示图像或者GIF动画。常用属性 1)Image:获取或设置显示的图像 2)SizeMode:AutoSize:自动调整控件PictureBox的大小为所包含的图片大小。CenterImage:将控件的中心和图片的中心对齐显示。如果控件比图片大,则图片将居中显示;如图片大,则图片将居中,外边缘将被裁。Normal:图片被置于控件的左上角。如果图片大,则超出部分被剪裁。StretchImage:控件中的图像被拉伸或收缩,完全占满控件。Zoom:控件中的图片按照比例拉伸或收缩,占满控件的长度或高度。3)Parent:(仅代码方式下可用):获取或设置父级控件,6.6 图像操作类控件,1.PictureBox控件(续)/加载if(pictureBox1.Image!=null)pictureBox1.Image.Dispose();/及时释放资源string fileName=Application.StartupPath+MyImage.gif;pictureBox1.Image=Image.FromFile(fileName);/清除图片if(pictureBox1.Image!=null)pictureBox1.Image.Dispose();/及时释放资源 pictureBox1.Image=null;,6.6 图像操作类控件,1.PictureBox控件(续)【例6-14】演示如何将图像拖放到RichTextBox控件内。,设计界面 运行界面,补充例题:豹子奔跑,运行效果如下图所示(PictureBoxExample):注意:图片在程序中的访问方法,补充例题:图片变换效果,运行效果如图所示(VistaPictureBoxExample):,6.6.2 图像列表组件(ImageList),2.ImageList控件:图像列表控件。功能:ImageList组件用于保存一组图像,然后供其他控件显示一组图像中的某一个图像,例如 ListView控件、TreeView控件等。常用属性:【Images】属性:包含关联的控件将要使用的图片。【ImageIndex】属性:每个单独的图像可通过其索引值或其键值来访问【ImageKey】属性:键值,6.6 图像操作类控件,2.ImageList控件:图像列表控件。【例6-15】演示如何利用ImageList组件动态改变按钮图像的状态。运行效果如下:,6.7.1 菜单控件(MenuStrip),MenuStrip控件用于设计菜单。菜单的组成:,6.7.1 MenuStrip控件,MenuStrip控件的常用属性(1)Dock:指示菜单栏在窗体中停靠的位置,默认值为Top。(2)Items:菜单栏上显示的各菜单项。MenuItem菜单项的常用属性(1)DisplayStyle:菜单项上的显示样式。(2)Image:指定在该菜单项上显示的图标。(在C:Program FilesMicrosoft Visual Studio 8Common7VS2005ImageLibrary下有一个.zip文件,内有各种动画文件、图像文件和图标文件,例如展开后在目录bitmapscommandspngformat下有打开、保存等图像。)(3)ShortcutKeys:快捷键。MenuItem菜单项的常用事件Click事件,6.7.2 ContextMenuStrip控件,用于制作右键快捷菜单使用该控件的关键是将需要显示快捷菜单的控件的ContextMenuStrip属性设置为添加的ContextMenuStrip控件对象。除了是右键弹出外,其他用法与MenuStrip相同。,6.7.3 ToolStrip控件,ToolStrip控件的作用是为Windows应用程序添加工具栏。工具栏一般是由多个按钮、标签等排列组成,通过这些项可以快速地执行程序提供的一些常用命令,比使用菜单选择更加方便快捷。ToolStrip控件的常用属性和事件与MenuStrip控件基本相同,各项的属性和事件与MenuStrip控件中菜单项基本相同。,6.7.4 StatusStrip,StatusStrip控件的作用是向窗体中添加状态栏,状态栏一般由文本提示信息组成。StatusStrip控件一般由ToolStripStatusLabel对象组成,每个这样的对象都可以显示文本、图标或者同时显示文本和图像。,6.7.4 StatusStrip,【例6-16】演示菜单与工具栏相关控件的用法。,设计界面 运行界面,6.8.1 列表视图控件(ListView),ListView(列表视图)控件用列表的形式显示一组数据,每项数据都是一个ListItem类型的对象,称之为项,同时每个项还可能会有多个描述的子项。一般使用ListView来显示分类查询及其详细信息。常用属性:MultiSelect属性Sorting属性Items属性View属性 ImageIndex属性,6.8.1 列表视图控件(ListView),【例6-17】演示ListView控件的用法。,设计界面 运行界面,6.8.2 树形视图控件(TreeView),常用属性Nodes:TreeView控件的节点集合SelectedNode:当前选定的树节点ImageIndex:获取或设置默认的图像列表的索引值SelectedImageIndex:节点选定时显示的图像列表的索引值CheckBoxes:显示在节点旁边带有复选框的树视图。ImageList属性:指定各节点可以使用的图标集合,6.8.2 树形视图控件(TreeView),(1)设置TreeView控件的ImageList属性为想要使用的现有ImageList控件。例如:treeView1.ImageList=imageList1;(2)设置节点的ImageIndex和SelectedImageIndex属性。ImageIndex属性确定正常和展开状态下的节点显示的图像,SelectedImageIndex属性确定选定状态下的节点显示的图像。例如:treeView1.SelectedNode.ImageIndex=0;treeView1.SelectedNode.SelectedImageIndex=1;,6.8.2 树形视图控件(TreeView),【例6-18】演示TreeView控件的用法。设计界面如下:,6.9.1 选项卡控件(TabControl),功能:TabControl控件用于创建带有多个选项卡(TabPages)的窗口,每个选项卡都相当于一个对话窗口容器,可以在其中独立地存放其他控件对象。常用属性:ImageList属性:获取或设置当前TabControl控件中的各个标签页使用的图标集合。MultiLine属性:获取或设置是否可以创建多行选项卡。TabPages属性:获取该选项卡控件中选项卡页的集合。,6.9.1 选项卡控件(TabControl),【例6-19】演示TabControl控件的用法。,设计界面 运行界面,6.9.2 面板复合控件,功能:(1)SplitContainer控件是由两个Panel面板和一个Split拆分条组成的复合体,两个Panel之间的拆分条可以拖动。(2)多个SplitContainer控件可嵌套,6.9.2 面板复合控件,【例6-20】演示SplitContainer控件的基本用法。运行效果如下:,补充例题:XP风格的Windows窗体,运行效果如下图所示(SplitContainerExample):,6.9.3 任务栏图标组件(NotifyIcon),功能:NotifyIcon组件主要用于显示通知区域中的图标。NotifyIcon是一个比较特殊的组件,只有运行时才能显示。常用属性:【Icon】属性设置出现在状态区域的图标。【Visible】属性控制是否让图标显示出来。【Text】属性来指定将鼠标指针放置在图标上时显示的提示信息。,6.9.3 任务栏图标组件(NotifyIcon),【例6-21】演示NotifyIcon控件的基本用法。,运行效果:,设计效果:,本章习题与实验,习题:1、2、3、4实验:实验四,