第6章窗体、控件和组件_第1页
第6章窗体、控件和组件_第2页
第6章窗体、控件和组件_第3页
第6章窗体、控件和组件_第4页
第6章窗体、控件和组件_第5页
已阅读5页,还剩80页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、1 1 第第6 6章章 窗体、控件和组件窗体、控件和组件 6.1 6.1 窗体与对话框窗体与对话框 6.2 6.2 控件共有的基本操作控件共有的基本操作 6.3 6.3 容器类控件和组件容器类控件和组件 6.4 6.4 文本操作类控件文本操作类控件 6.5 6.5 选择操作类控件选择操作类控件 6.6 6.6 图像操作类控件和组件图像操作类控件和组件 6.7 6.7 菜单、工具栏与状态栏菜单、工具栏与状态栏 6.86.8 视图操作类控件视图操作类控件 6.96.9 其他常用控件其他常用控件 2 2 界面设计举例界面设计举例1-1-动物的故事(动物的故事(KeyboardAndEventExam

2、pleKeyboardAndEventExample) 3 3 界面设计举例界面设计举例2-2-打飞鸟(打飞鸟(DownBirdDownBird) 4 4 界面设计举例界面设计举例3-Vista3-Vista图片变换效果(图片变换效果(vistaPictureBoxExample)vistaPictureBoxExample) 5 5 界面设计举例界面设计举例4-XP4-XP风格的风格的windowwindow窗体窗体(SplitContainerExample)(SplitContainerExample) 6 6 6.1 6.1 窗体与对话框窗体与对话框 1 1、窗体应用程序的启动和停止、

3、窗体应用程序的启动和停止 使用使用ApplicationApplication类提供的静态方法来启动、停止应用程序。类提供的静态方法来启动、停止应用程序。 ApplicationApplication类提供的方法:类提供的方法: RunRun方法:用于在当前线程上启动应用程序消息循环,并显方法:用于在当前线程上启动应用程序消息循环,并显 示窗体。示窗体。 ExitExit方法:用于停止消息循环。方法:用于停止消息循环。 DoEventsDoEvents方法:用于在程序处于某个循环中时处理消息。方法:用于在程序处于某个循环中时处理消息。 7 7 6.1.2 6.1.2 窗体的创建、显示与隐藏窗体

4、的创建、显示与隐藏 1 1、如何在代码中打开一个新窗体、如何在代码中打开一个新窗体 Form2 fm = new Form2();Form2 fm = new Form2(); fm.Show(); / fm.Show(); /或者或者fm.ShowDialog();fm.ShowDialog(); 2 2、如何在代码中关闭一个窗体、如何在代码中关闭一个窗体 用法用法1 1:fm.Close();fm.Close(); 用法用法2 2:this.Close();this.Close(); 用法用法3 3:Application.OpenFormsForm1.Close();Applicatio

5、n.OpenFormsForm1.Close(); 3 3、如何隐藏一个打开的窗体、如何隐藏一个打开的窗体 (1 1)隐藏当前窗体:)隐藏当前窗体:this.Hide();this.Hide(); (2 2)隐藏其它窗体:)隐藏其它窗体:Application.OpenFormsForm1.Hide();Application.OpenFormsForm1.Hide(); 4 4、如何重新显示隐藏的窗体、如何重新显示隐藏的窗体 (1 1)显示当前窗体:)显示当前窗体:this.Show();this.Show(); (2 2)显示其它窗体:)显示其它窗体:Application.OpenFor

6、msForm1.Show();Application.OpenFormsForm1.Show(); 8 8 6.1.2 6.1.2 窗体的创建、显示与隐藏窗体的创建、显示与隐藏 【例例6-16-1】演示窗体的基本用法以及如何显示和关闭窗体。演示窗体的基本用法以及如何显示和关闭窗体。 部分运行效果如图:部分运行效果如图: 9 9 6.1.3 6.1.3 窗体常用的属性窗体常用的属性 常用属性:常用属性: NameName:获取或设置窗体的名称,代码中通过该属性来访问:获取或设置窗体的名称,代码中通过该属性来访问 窗体。窗体。 BackColorBackColor:获取或设置窗体的背景色。:获取或

7、设置窗体的背景色。 ForeColorForeColor:获取或设置窗体上文本的前景色。:获取或设置窗体上文本的前景色。 LocationLocation:获取或设置以屏幕坐标表示的代表窗体左上角:获取或设置以屏幕坐标表示的代表窗体左上角 的坐标位置。的坐标位置。 SizeSize:指定窗体的高度和宽度。:指定窗体的高度和宽度。 TextText:设置控件上所要显示的文本,如标签、按钮和复选:设置控件上所要显示的文本,如标签、按钮和复选 框等控件上的文字。框等控件上的文字。 1010 6.1.4 6.1.4 窗体常用属性窗体常用属性 设置窗体属性的途径有设置窗体属性的途径有2 2种:种: 在设

8、计模式下利用在设计模式下利用【属性属性】窗口设置窗体属性。窗口设置窗体属性。 在代码编辑模式下设置窗体属性。在代码编辑模式下设置窗体属性。 补充例题补充例题2 2(FormSetExample)FormSetExample) 1111 6.1.4 6.1.4 窗体位置及外观控制窗体位置及外观控制 StartPostionStartPostion:获取或设置运行时窗体的起始位置,一般在构造:获取或设置运行时窗体的起始位置,一般在构造 函数中设置此属性。函数中设置此属性。 例如:例如: this.StartPosition = FormStartPosition.Manual; this.Star

9、tPosition = FormStartPosition.Manual; this. Location = new Point(screenX, screenY); this. Location = new Point(screenX, screenY); 通过设置窗体的通过设置窗体的【ControlBoxControlBox】属性为属性为“TrueTrue”或者或者“FalsFals e e”,可以控制是否显示最大化、最小化以及关闭按钮。除此之,可以控制是否显示最大化、最小化以及关闭按钮。除此之 外,还可以通过设置窗体的外,还可以通过设置窗体的【FormBorderStyleFormBor

10、derStyle】属性控制窗体属性控制窗体 的边框样式的边框样式. . 1212 6.1.4 6.1.4 窗体位置及外观控制窗体位置及外观控制 【例例6-26-2】演示如何控制窗体的显示位置以及如何控制窗体的演示如何控制窗体的显示位置以及如何控制窗体的 外观形状。设计视图如下:外观形状。设计视图如下: 运行效果如下:运行效果如下: 1313 6.1.5 6.1.5 单文档窗体和多文档窗体单文档窗体和多文档窗体 WindowsWindows的窗体分为单文档窗体和多文档窗体。的窗体分为单文档窗体和多文档窗体。 多文档窗体(多文档窗体(Multi-Document Interface, MDIMul

11、ti-Document Interface, MDI)是指在一)是指在一 个主窗体中可以包含一个或多个子窗体的窗体,主窗体称为个主窗体中可以包含一个或多个子窗体的窗体,主窗体称为 MDIMDI父窗体,子窗体称为父窗体,子窗体称为MDIMDI子窗体。子窗体。 【例例6-36-3】演示演示MDIMDI窗体的基本用法以及如何显示和关闭子窗窗体的基本用法以及如何显示和关闭子窗 体体 1414 补充例题补充例题3 3:MDIMDI窗体用法窗体用法 运行效果如下(运行效果如下(MDIExampleMDIExample):): 1515 6.1.6 6.1.6 对话框对话框 对话框用于与用户交互和检索信息。

12、对话框用于与用户交互和检索信息。 对话框分为标准对话框和自定义对话框。对话框分为标准对话框和自定义对话框。 1 1MessageBoxMessageBox对话框对话框 调用调用MessageBoxMessageBox类的静态类的静态ShowShow方法来显示消息对话框。返回方法来显示消息对话框。返回 值是值是DialogResultDialogResult枚举的值,其中每个值都等同于消息对话枚举的值,其中每个值都等同于消息对话 框可以显示的按钮之一。框可以显示的按钮之一。 Show Show方法提供了多种重载形式,常用的重载形式有:方法提供了多种重载形式,常用的重载形式有: upublic s

13、tatic DialogResult Show(string text)public static DialogResult Show(string text) upublic static DialogResult Show(string text, string public static DialogResult Show(string text, string caption)caption) upublic static DialogResult Show(public static DialogResult Show( string text, string caption, Me

14、ssageBoxButtons string text, string caption, MessageBoxButtons buttons, MessageBoxIcon icon)buttons, MessageBoxIcon icon) 1616 6.1.6 6.1.6 对话框对话框 其中:其中: TextText:在消息框中显示的文本。:在消息框中显示的文本。 captioncaption:在消息框的标题栏中显示的文本。:在消息框的标题栏中显示的文本。 buttonsbuttons:MessageBoxButtonsMessageBoxButtons枚举值之一,指定在消息框中显枚举值之

15、一,指定在消息框中显 示哪些按钮。枚举值有示哪些按钮。枚举值有OKOK、OKCancelOKCancel、YesNoCancelYesNoCancel和和YesNoYesNo。 iconicon:MessageBoxIconMessageBoxIcon枚举值之一,指定在消息框中显示哪个枚举值之一,指定在消息框中显示哪个 图标。枚举值有图标。枚举值有NoneNone(不显示图标)、(不显示图标)、HandHand(手形)、(手形)、 QuestionQuestion(问号)、(问号)、ExclamationExclamation(感叹号)、(感叹号)、AsteriskAsterisk(星(星 号

16、)、号)、StopStop(停止)、(停止)、ErrorError(错误)、(错误)、WarningWarning(警告)和(警告)和 InformationInformation(信息)。(信息)。 ShowShow方法的返回值是方法的返回值是DialogResultDialogResult枚举值之一。枚举值之一。DialogResultDialogResult 枚举值有:枚举值有:NoneNone(消息框未返回值)、(消息框未返回值)、OKOK、CancelCancel、YesYes和和NoNo。 1717 6.1.6 6.1.6 对话框对话框 1818 6.1.6 6.1.6 对话框对话

17、框 2.ColorDialog2.ColorDialog:提供颜色选择。:提供颜色选择。 方法:方法:ShowDialogShowDialog()() 返回值:返回值:DialogResultDialogResult类型类型 3.FontDialog3.FontDialog:提供字体选择。:提供字体选择。 方法:方法:ShowDialogShowDialog()() 返回值:返回值:DialogResultDialogResult类型类型 用法如下:用法如下: ColorDialog colorDlg = new ColorDialog( );ColorDialog colorDlg = ne

18、w ColorDialog( ); if (colorDlg.ShowDialog( ) = DialogResult.OK)if (colorDlg.ShowDialog( ) = DialogResult.OK) textBox1.ForeColor = colorDlg.Color; textBox1.ForeColor = colorDlg.Color; 1919 6.1.6 6.1.6 对话框对话框 自定义窗体对话框的设计方法与设计一般窗体基本相同,不同自定义窗体对话框的设计方法与设计一般窗体基本相同,不同 之处是还要对自定义窗体对话框作如下处理:之处是还要对自定义窗体对话框作如下处

19、理: u将窗体的将窗体的【FormBorderStyleFormBorderStyle】属性更改为属性更改为“FixedDialogFixedDialog” u将窗体的将窗体的【MaximizeBoxMaximizeBox】属性、属性、【MinimizeBoxMinimizeBox】属性和属性和 【ControlBoxControlBox】属性设置为属性设置为“FalseFalse” u在窗体上放一个在窗体上放一个“确定确定”按钮,一个按钮,一个“取消取消”按钮。然后将按钮。然后将 窗体的窗体的【AcceptButtonAcceptButton】属性设置为属性设置为“确定确定”按钮,按钮, 【

20、CancelButtonCancelButton】属性设置为属性设置为“取消取消”按钮。按钮。 u在按钮事件中,设置在按钮事件中,设置DialogResultDialogResult类型的返回值,以便让对类型的返回值,以便让对 话框隐藏起来话框隐藏起来 2020 6.1.6 6.1.6 对话框对话框 【例例6-46-4】自定义窗体对话框的用法。自定义窗体对话框的用法。 设计视图如下:设计视图如下: 运行效果如下:运行效果如下: 2121 6.2 6.2 控件共有的基本操作控件共有的基本操作 控件和组件控件和组件 u相同点:均指可重复使用并且可以和其他对象进行交互相同点:均指可重复使用并且可以和

21、其他对象进行交互 的对象的对象 u区别:在于控件提供了用户界面功能,而组件不提供用区别:在于控件提供了用户界面功能,而组件不提供用 户界面。每个控件都是一个组件,但只有提供用户界面户界面。每个控件都是一个组件,但只有提供用户界面 功能的组件才称为控件。功能的组件才称为控件。 2222 6.2.1 6.2.1 控件常用属性和基本操作控件常用属性和基本操作 1.1.常用基本属性常用基本属性 1) (Name)1) (Name):指定控件的名称,它是控件在当前应用程序中的:指定控件的名称,它是控件在当前应用程序中的 唯一标识,代码通过该属性来访问控件唯一标识,代码通过该属性来访问控件 2) Enab

22、led2) Enabled:决定控件是否可用,取值为:决定控件是否可用,取值为truetrue时可用,取值为时可用,取值为 falsefalse时不可用时不可用 3 3)AnchorAnchor属性:保持控件与边框的距离不变属性:保持控件与边框的距离不变 4 4)DockDock属性:让控件始终紧靠边框属性:让控件始终紧靠边框 2323 6.2.1 6.2.1 控件中常用的属性和方法控件中常用的属性和方法 2. 2. 控件透明处理控件透明处理 将窗体中控件的背景色设置为将窗体中控件的背景色设置为“TransparentTransparent”,则该控件,则该控件 相对于其父容器是透明的。相对于

23、其父容器是透明的。 (1)Label (2)Button(1)Label (2)Button 【例例6-56-5】将图像和文字叠加在同一幅背景图上,让其看起来将图像和文字叠加在同一幅背景图上,让其看起来 像是一幅图。像是一幅图。 未设置未设置BackColorBackColor属性时的设计界面属性时的设计界面 设置设置BackColorBackColor属性后的界面效果属性后的界面效果 2424 6.2.1 6.2.1 控件中常用的属性和方法控件中常用的属性和方法 3 3控件的对齐方式和显示顺序控件的对齐方式和显示顺序 (1 1)当控件的)当控件的【AutoSizeAutoSize】属性为属性

24、为“FalseFalse”时,利用控件的时,利用控件的 【SizeSize】属性可以精确控制控件属性可以精确控制控件 (2 2)多个控件,可以按住)多个控件,可以按住键同时选中多个控件,然后键同时选中多个控件,然后 利用利用“布局布局”快捷工具栏中的快捷方式可以快速让各控件快捷工具栏中的快捷方式可以快速让各控件 对齐。对齐。 4 4控件的焦点顺序调整控件的焦点顺序调整 (1 1)利用布局工具栏中的)利用布局工具栏中的“键顺序键顺序”按钮,可以在设计按钮,可以在设计 界面下调整焦点顺序界面下调整焦点顺序 (2 2)如果希望在代码中让焦点在运行开始就处于某个控件上,)如果希望在代码中让焦点在运行开

25、始就处于某个控件上, 在窗体的在窗体的ShownShown事件中调用事件中调用FocusFocus方法来实现。方法来实现。 textBox1.Focus( );textBox1.Focus( ); 2525 6.2.2 6.2.2 控件的锚定和停靠控件的锚定和停靠 1 1AnchorAnchor属性属性 u【AnchorAnchor】属性定义控件的定位点位置。当控件锚定到某属性定义控件的定位点位置。当控件锚定到某 个窗体时,如果用户调整该窗体的大小,该控件将维持它个窗体时,如果用户调整该窗体的大小,该控件将维持它 与定位点位置之间的距离不变。与定位点位置之间的距离不变。 u例如:如果一个例如:

26、如果一个TextBoxTextBox控件锚定于窗体的左、右和底边缘,控件锚定于窗体的左、右和底边缘, 那么当用户调整该窗体的大小时,该那么当用户调整该窗体的大小时,该TextBoxTextBox控件将在水平控件将在水平 方向上自动调整大小,以确保方向上自动调整大小,以确保TextBoxTextBox控件与该窗体右边和控件与该窗体右边和 左边的距离不变。左边的距离不变。 2626 6.2.2 6.2.2 控件的锚定和停靠控件的锚定和停靠 2. Dock2. Dock属性属性 u【DockDock】属性的用途是使控件与窗体边缘对齐。此属性指属性的用途是使控件与窗体边缘对齐。此属性指 定控件在窗体中

27、的驻留位置。定控件在窗体中的驻留位置。 u【DockDock】属性设置为下列值:属性设置为下列值: (1)Left(1)Left停靠到窗体的左侧。停靠到窗体的左侧。 (2) Right(2) Right停靠到窗体的右侧。停靠到窗体的右侧。 (3) Top(3) Top停靠到窗体的顶部。停靠到窗体的顶部。 (4) Bottom(4) Bottom停靠到窗体底部。停靠到窗体底部。 (5) Fill(5) Fill占据窗体中的所有剩余空间。占据窗体中的所有剩余空间。 (6) None(6) None 不在任何位置停靠,它显示在由不在任何位置停靠,它显示在由LocationLocation属性指属性指

28、 定的位置。定的位置。 u举例说明举例说明 2727 6.2.3 6.2.3 常用的鼠标事件和键盘事件常用的鼠标事件和键盘事件 事件事件: :是指由系统事先设定的、能被控件识别和响应的动作是指由系统事先设定的、能被控件识别和响应的动作. . 事件驱动事件驱动: Windows: Windows应用程序的设计是基于事件驱动的。事应用程序的设计是基于事件驱动的。事 件驱动指程序不是完全按照代码文件中代码的排列顺序从件驱动指程序不是完全按照代码文件中代码的排列顺序从 上到下依次执行,而是根据用户操作触发相应的事件来执上到下依次执行,而是根据用户操作触发相应的事件来执 行对应的代码。行对应的代码。 一

29、个控件可以响应多个事件,设计一个控件可以响应多个事件,设计WindowsWindows应用程序的很多应用程序的很多 工作就是为各个控件编写需要的事件代码工作就是为各个控件编写需要的事件代码. . 2828 6.2.3 6.2.3 常用的鼠标事件和键盘事件常用的鼠标事件和键盘事件 1.1.鼠标事件鼠标事件 uClickClick 单击鼠标左键时触发单击鼠标左键时触发 uMouseDoubleClickMouseDoubleClick 双击鼠标左键时触发双击鼠标左键时触发 uMouseEnterMouseEnter 鼠标进入控件可见区域时触发鼠标进入控件可见区域时触发 uMouseMoveMous

30、eMove 鼠标在控件区域内移动时触发鼠标在控件区域内移动时触发 uMouseLeaveMouseLeave 鼠标离开控件可见区域时触发鼠标离开控件可见区域时触发 2.2.键盘事件键盘事件 uKeyDown KeyDown 按下键盘上某个键时触发按下键盘上某个键时触发 uKeyUp KeyUp 释放键盘上的按键时触发释放键盘上的按键时触发 uKeyPress KeyPress 在在KeyDownKeyDown之后之后KeyUpKeyUp之前触发,非字符键不会之前触发,非字符键不会 触发该事件。触发该事件。 2929 6.2.3 6.2.3 常用的鼠标事件和键盘事件常用的鼠标事件和键盘事件 3.

31、3.注意注意 (1 1)KeyPressKeyPress事件或鼠标事件处理程序没有提供对应的参数,事件或鼠标事件处理程序没有提供对应的参数, 判断键盘输入稍微有点麻烦,所以一般在判断键盘输入稍微有点麻烦,所以一般在KeyDownKeyDown事件或者事件或者 KeyUpKeyUp事件中对用户按键进行处理事件中对用户按键进行处理 (2 2)如果希望使键盘消息在到达窗体上的任何控件之前先被窗)如果希望使键盘消息在到达窗体上的任何控件之前先被窗 体接收,需要将窗体的体接收,需要将窗体的KeyPreviewKeyPreview属性设置为属性设置为truetrue。 3030 6.2.3 6.2.3 常

32、用的鼠标事件和键盘事件常用的鼠标事件和键盘事件 【例例6-66-6】演示鼠标和键盘事件的触发条件,触发顺序,并显演示鼠标和键盘事件的触发条件,触发顺序,并显 示各个事件所传递的参数内容。示各个事件所传递的参数内容。 设计界面如下:设计界面如下: 3131 补充例题补充例题4 4:“有本事就点我!有本事就点我!” 运行效果(运行效果(ClickMeExampleClickMeExample):): 利用鼠标事件利用鼠标事件MouseEnterMouseEnter实现。实现。 3232 本章综合举例本章综合举例1 1实现要点实现要点 3333 本章综合举例本章综合举例1 1实现要点实现要点 控件鼠

33、标事件和键盘事件处理控件鼠标事件和键盘事件处理 MouseEnterMouseEnter、MouseLeaveMouseLeave、MouseClickMouseClick KeyDownKeyDown、KeyUpKeyUp 背景音乐播放背景音乐播放 SoundPlayerSoundPlayer类,播放类,播放* *.WAV.WAV格式的音乐文件格式的音乐文件 常用方法:常用方法:PlayPlay、PlayLoopingPlayLooping、StopStop 点击动物时随机声音的播放点击动物时随机声音的播放 RandomRandom随机数生成器随机数生成器 Properties.Resour

34、ceProperties.Resource资源使用方法资源使用方法 3434 6.3.1 6.3.1 分组控件(分组控件(PanelPanel、GroupBoxGroupBox) 分组控件:用于对不同的控件进行分组分组控件:用于对不同的控件进行分组 uPanelPanel控件控件 uGroupBoxGroupBox控件控件 不同:不同: uPanelPanel控件不能显示标题但可以有滚动条控件不能显示标题但可以有滚动条 u而而GroupBoxGroupBox控件可显示标题但不能显示滚动条。控件可显示标题但不能显示滚动条。 3535 6.3.2 6.3.2 工具提示组件(工具提示组件(ToolT

35、ipToolTip) ToolTipToolTip组件用于在用户指向控件时显示相应的提示信息。组件用于在用户指向控件时显示相应的提示信息。 u属性窗口中设置提示信息属性窗口中设置提示信息 u在代码中利用在代码中利用ToolTipToolTip组件的组件的SetToolTipSetToolTip方法直接设置其方法直接设置其 他控件的操作提示信息。他控件的操作提示信息。 3636 6.3.3 6.3.3 错误提示组件(错误提示组件(ErrorProviderErrorProvider) ErrorProvider ErrorProvider组件可以对窗体或控件上的用户输入进行组件可以对窗体或控件上

36、的用户输入进行 验证。验证。 用用MessageBoxMessageBox消息框,一旦用户关闭了消息框,就再也看消息框,一旦用户关闭了消息框,就再也看 不见错误信息不见错误信息 ErrorProviderErrorProvider组件则是在相关控件(如文本框)旁显示一组件则是在相关控件(如文本框)旁显示一 个闪烁的错误图标(),当用户将鼠标指针放在该错误图个闪烁的错误图标(),当用户将鼠标指针放在该错误图 标上时,将出现显示错误信息字符串的工具提示。标上时,将出现显示错误信息字符串的工具提示。 3737 6.3.4 6.3.4 定时组件(定时组件(TimerTimer) 4 4、TimerTi

37、mer组件:组件: 功能:主要用于设置某个时间间隔,并在每次到达设置的时功能:主要用于设置某个时间间隔,并在每次到达设置的时 间间隔时,触发指定的事件。间间隔时,触发指定的事件。 该组件常用的属性是该组件常用的属性是【EnabledEnabled】属性和属性和【IntervalInterval】属性。属性。 u【EnabledEnabled】属性表示是否启用计时,这是一个属性表示是否启用计时,这是一个boolbool类型类型 的属性,的属性,falsefalse表示停止计时,表示停止计时,truetrue表示开始计时;同时,表示开始计时;同时, 该组件还提供了该组件还提供了StartStart

38、方法和方法和StopStop方法,其作用与设置方法,其作用与设置 【EnabledEnabled】属性的作用相同。属性的作用相同。 u【IntervalInterval】属性表示触发属性表示触发TickTick事件的间隔时间,以事件的间隔时间,以msms 为计时单位,默认为为计时单位,默认为100ms100ms。 3838 6.3.4 6.3.4 定时组件(定时组件(TimerTimer) 4 4、TimerTimer组件(续):组件(续): 【例例6-76-7】利用利用TimerTimer组件和组件和LabelLabel控件,在窗体上方显示类似控件,在窗体上方显示类似 电影字幕的不停向上滚动

39、的文本,并在窗体下方显示一个电影字幕的不停向上滚动的文本,并在窗体下方显示一个 简单的时钟信息。简单的时钟信息。 左图为设计界面,右图为运行效果。左图为设计界面,右图为运行效果。 3939 补充例题补充例题5 5:变换颜色和位置的文字:变换颜色和位置的文字 演示效果如下(演示效果如下(TextChangeExampleTextChangeExample):): 文字会从左到右不停的移动,并且颜色在随机变换。文字会从左到右不停的移动,并且颜色在随机变换。 4040 补充例题补充例题5 5实现要点实现要点 控件位置变换控件位置变换 LeftLeft、TopTop BottomBottom、Righ

40、tRight 文本颜色随机变换文本颜色随机变换 随机数生成器随机数生成器RandomRandom Color.FromArgbColor.FromArgb方法生成颜色方法生成颜色 进一步思考(留给学生自己完成):进一步思考(留给学生自己完成): 文本的位置变换方向:从右到左、从上到下、从下到上、文本的位置变换方向:从右到左、从上到下、从下到上、 按某种曲线变换?如果是其他控件呢?按某种曲线变换?如果是其他控件呢? 如果窗体的前景色、背景色变换如何实现?如果窗体的前景色、背景色变换如何实现? 4141 补充例题补充例题6 6:打飞鸟游戏:打飞鸟游戏 运行效果如下:运行效果如下: 4242 补充例

41、题补充例题6 6实现要点实现要点 飞鸟的显示飞鸟的显示 飞鸟的移动飞鸟的移动 初始位置初始位置 变换位置变换位置 飞鸟被点击时消失飞鸟被点击时消失 进一步思考(功能扩展留给学生完成)进一步思考(功能扩展留给学生完成) 统计一段时间内击中飞鸟的个数?统计一段时间内击中飞鸟的个数? 记录玩游戏玩家的名称和当前的成绩及排行榜。记录玩游戏玩家的名称和当前的成绩及排行榜。 4343 6.4.1 6.4.1 标签控件(标签控件(LabelLabel、LinkLabelLinkLabel) 标签类控件(标签类控件(LabelLabel、LinkLabelLinkLabel)操作控件包括:)操作控件包括: 1

42、 1、LabelLabel:用于提供控件或窗体的描述性文字,以便为用户提:用于提供控件或窗体的描述性文字,以便为用户提 供相应的信息。供相应的信息。 常用属性:常用属性:TextText属性。属性。 2 2、LinkLabelLinkLabel: 与与LabelLabel控件的作用非常相似,不同的是控件的作用非常相似,不同的是 LinkLabelLinkLabel控件以超链接的形式显示文本信息。控件以超链接的形式显示文本信息。 当用户单击当用户单击LinkLabelLinkLabel控件时,会触发控件时,会触发LinkClickedLinkClicked事件。可事件。可 以在以在LinkCli

43、ckedLinkClicked事件中编写代码让其链接到指定的网页。事件中编写代码让其链接到指定的网页。 常用属性:常用属性:TextText属性、属性、LinkAreaLinkArea属性、属性、LinkDataLinkData属性属性 4444 6.4.2 6.4.2 文本控件文本控件 1.1.文本框文本框(TextBox)(TextBox)控件常用的基本属性控件常用的基本属性 1) Text1) Text:表示文本框中显示的内容。:表示文本框中显示的内容。 2) MaxLength2) MaxLength:表示用户可以在文本框控件中最多键入的字符数,:表示用户可以在文本框控件中最多键入的字

44、符数, 默认值为默认值为3276732767个字符。注意,由于使用的是个字符。注意,由于使用的是UnicodeUnicode字符,字符, 所以对中文和英文的字符计数方法是相同的,即一个英文字所以对中文和英文的字符计数方法是相同的,即一个英文字 符的长度为符的长度为1 1,一个汉字字符的长度也是,一个汉字字符的长度也是1 1。 3) Multiline3) Multiline:表示是否可以包含多行内容。:表示是否可以包含多行内容。 4) PasswordChar4) PasswordChar:用于指定在屏蔽:用于指定在屏蔽TextBoxTextBox控件中输入的密码字控件中输入的密码字 符时所要

45、使用的符号。符时所要使用的符号。 2. TextBox2. TextBox控件常用的基本事件控件常用的基本事件 TextChangedTextChanged:表示文本框中的当前内容(:表示文本框中的当前内容(TextText属性值)更改属性值)更改 时触发的操作。时触发的操作。 4545 6.4.2 6.4.2 文本操作类控件文本操作类控件 【例例6-86-8】演示演示TextBoxTextBox控件、控件、ToolTipToolTip组件和组件和ErrorProviderErrorProvider 组件的用法。组件的用法。 设计界面如下:设计界面如下: 4646 6.4.2 6.4.2 文本

46、操作类控件文本操作类控件 2.MaskedTextBox2.MaskedTextBox:掩码文本框:掩码文本框 主要作用主要作用 控制输入文本的格式。如果输入的内容不满足规定的格式,控制输入文本的格式。如果输入的内容不满足规定的格式, 则拒绝用户输入。则拒绝用户输入。 常用属性常用属性 【MaskMask】属性,用于设置当前掩码文本框输入字符的格式。属性,用于设置当前掩码文本框输入字符的格式。 。 4747 6.4.2 6.4.2 文本操作类控件文本操作类控件 3.RichTextBox3.RichTextBox: 主要功能是进行高级文本输入和编辑,作为一般的文本输主要功能是进行高级文本输入和

47、编辑,作为一般的文本输 入,其属性、事件与入,其属性、事件与TextBoxTextBox控件的属性、事件大致相同。控件的属性、事件大致相同。 它可以完成与它可以完成与Microsoft WordMicrosoft Word相似的复杂文字处理功能,相似的复杂文字处理功能, 比如改变文本、段落的显示格式,在文本中查找特定字符比如改变文本、段落的显示格式,在文本中查找特定字符 和字符串等,可以保存图像内容。和字符串等,可以保存图像内容。 常用属性常用属性 (1)SelectionFont(1)SelectionFont 表示当前选中文本或所要输入文本的字体、大小、效果表示当前选中文本或所要输入文本的

48、字体、大小、效果 等等 (2)SelectionColor(2)SelectionColor 表示当前选中文本或所要输入文本的颜色表示当前选中文本或所要输入文本的颜色 4848 6.5.1 6.5.1 列表控件(列表控件(ListBoxListBox、ComboBoxComboBox) 1 1、列表类控件(、列表类控件(ListBoxListBox控件、控件、ComboBoxComboBox控件)控件) (1 1)ListBoxListBox(列表框)控件和(列表框)控件和ComboBoxComboBox(下拉框)控件均用(下拉框)控件均用 于显示一组条目,以便操作者从中选择一条或者多条信息,

49、于显示一组条目,以便操作者从中选择一条或者多条信息, 并对其进行相应的处理。并对其进行相应的处理。 (2 2)常用的属性和方法)常用的属性和方法 uItemsItems uSelectedIndexSelectedIndex、SelectedItemSelectedItem uSelectedItemsSelectedItems uCount Count uItems.AddItems.Add uItems.AddRangeItems.AddRange uItems.RemoveItems.Remove、Items.RemoveAtItems.RemoveAt uItems.ClearItem

50、s.Clear 4949 6.5.1 6.5.1 列表控件(列表控件(ListBoxListBox、ComboBoxComboBox) 1 1ListBoxListBox控件的其他属性控件的其他属性 MutiColumnMutiColumn属性:决定是否可以以多列的形式显示各项。属性:决定是否可以以多列的形式显示各项。 SelectionModeSelectionMode属性:选择列表项的方式。属性:选择列表项的方式。 uNoneNone:不能选择任何条目;:不能选择任何条目; uOneOne:每次只能选择一个条目;:每次只能选择一个条目; uMultiSimpleMultiSimple:每次

51、可以选择一个条目或者多个条目,单:每次可以选择一个条目或者多个条目,单 击对应条目即被选中,再次单击取消选中;击对应条目即被选中,再次单击取消选中; uMultiExtendedMultiExtended:每次可以选择一个条目或者多个条目,:每次可以选择一个条目或者多个条目, 仅用鼠标单击各条目时,每次选择一个条目;使用组合仅用鼠标单击各条目时,每次选择一个条目;使用组合 键(如键(如或或键)配合时,可以选择多个条目。键)配合时,可以选择多个条目。 HorizontalScrollbarHorizontalScrollbar属性:获取或设置一个值(属性:获取或设置一个值(truetrue或者或

52、者 falsefalse),该值指示是否在控件中显示水平滚动条。),该值指示是否在控件中显示水平滚动条。 5050 6.5.1 6.5.1 列表控件(列表控件(ListBoxListBox、ComboBoxComboBox) 2 2、ComboBoxComboBox控件的其他属性控件的其他属性 ComboBoxComboBox控件是控件是TextBoxTextBox和和ListBoxListBox组合出来的结果。组合出来的结果。 该控件包含了两个部分:顶部是一个允许用户键入列表项该控件包含了两个部分:顶部是一个允许用户键入列表项 的文本框(的文本框(TextBoxTextBox)和文本框右边带

53、有向下箭头的按钮组)和文本框右边带有向下箭头的按钮组 合出来的结果合出来的结果 DropDownStyleDropDownStyle属性:表示组合框的显示样式,它有属性:表示组合框的显示样式,它有3 3种选种选 择形式。择形式。 SimpleSimple:同时显示文本框和列表框,文本框可以被编辑。:同时显示文本框和列表框,文本框可以被编辑。 DropDownDropDown:只显示文本框,隐藏列表框,且文本框可以被:只显示文本框,隐藏列表框,且文本框可以被 编辑。编辑。 DropDownListDropDownList:只显示文本框,隐藏列表框,但文本框不:只显示文本框,隐藏列表框,但文本框不

54、 可以被编辑。可以被编辑。 MaxDropDownItemsMaxDropDownItems属性:设置打开列表框时所显示的最大属性:设置打开列表框时所显示的最大 条目数。条目数。 5151 6.5.1 6.5.1 列表控件(列表控件(ListBoxListBox、ComboBoxComboBox) 【例例6-96-9】设计一个简单的选修课程修改界面,从可选项中选择设计一个简单的选修课程修改界面,从可选项中选择 课程添加到选修的课程列表内。如果可选项中没有提供所选课程添加到选修的课程列表内。如果可选项中没有提供所选 课程,允许用户直接键入新课程,并自动将键入的新课程添课程,允许用户直接键入新课程

55、,并自动将键入的新课程添 加到供选择的课程中。加到供选择的课程中。 设计界面如下:设计界面如下: 5252 6.5.2 6.5.2 复选框控件复选框控件 1.CheckBox1.CheckBox控件控件 (1).(1).三种状态三种状态 (2).(2).常用属性常用属性 CheckedChecked属性:属性:true,falsetrue,false CheckStateCheckState属性属性 :Checked:Checked、UncheckedUnchecked和和IndeterminateIndeterminate ThreeStateThreeState属性属性 Text Text

56、属性属性 (3).(3).常用事件常用事件 CheckedChangedCheckedChanged事件事件 5353 6.5.2 6.5.2 复选框控件复选框控件 1.CheckBox1.CheckBox控件控件 【例例6-106-10】设计一个窗体,让用户选择球类参赛项目,要求用设计一个窗体,让用户选择球类参赛项目,要求用 一个复选框表示是否参加所有比赛项目,如果只参加了部一个复选框表示是否参加所有比赛项目,如果只参加了部 分球赛项目,该复选框用分球赛项目,该复选框用“不确定不确定”状态表示。设计界面状态表示。设计界面 如下:如下: 5454 6.5.2 6.5.2 复选框控件复选框控件

57、2 2CheckedListBoxCheckedListBox控件控件 适用场合:当窗体中所需的复选框选项较多时,或者需要在运适用场合:当窗体中所需的复选框选项较多时,或者需要在运 行时动态地决定有哪些选项时,使用此控件比较方便。行时动态地决定有哪些选项时,使用此控件比较方便。 常用属性、方法常用属性、方法 (1) Items(1) Items属性:项的集合。属性:项的集合。 (2) Count(2) Count属性:项的数目。属性:项的数目。 (3) CheckedItems(3) CheckedItems属性:获取选中项的集合。属性:获取选中项的集合。 (4) CheckedIndices

58、(4) CheckedIndices属性:获取选中项索引的集合。属性:获取选中项索引的集合。 (4) MultiColumn (4) MultiColumn属性:属性:truetrue或或falsefalse。 (5) GetItemChecked(5) GetItemChecked方法:获取指定项是否被选中方法:获取指定项是否被选中 。 (6) SetItemChecked(6) SetItemChecked方法:设置某个复选框的选中状态。方法:设置某个复选框的选中状态。 5555 6.5.2 6.5.2 复选框控件复选框控件 2 2CheckedListBoxCheckedListBox控

59、件控件 【例例6-116-11】设计一个简单的课程选择界面,演示设计一个简单的课程选择界面,演示CheckedListBoxCheckedListBox 控件的用法。控件的用法。 左图为设计界面,右图为运行效果。左图为设计界面,右图为运行效果。 5656 补充例题:补充例题:CheckedListBoxCheckedListBox用法用法 运行效果如下:运行效果如下: 5757 6.5.6.5.3 3 RadioButton RadioButton控件控件 1.1.特点:特点: (1)(1)单选单选 (2)(2)以各自所在的容器来划分组,如果在一个窗体上创建多以各自所在的容器来划分组,如果在一

60、个窗体上创建多 个单选按钮组,可以使用个单选按钮组,可以使用GroupBoxGroupBox或者或者PanelPanel控件作为容器。控件作为容器。 2. 2. 与与CheckBoxCheckBox相比,相比,RadioButtonRadioButton控件除了是单选外,其他用控件除了是单选外,其他用 法与法与CheckBoxCheckBox用法相同。用法相同。 5858 6.5.6.5.3 3 RadioButton RadioButton控件控件 【例例6-126-12】演示演示RadioButtonRadioButton控件的用法。控件的用法。 设计界面如下:设计界面如下: 5959 6

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论