收藏 分享(赏)

C#程序设计及应用教程第6章+窗体、控件和组件.ppt

上传人:gsy285395 文档编号:4528848 上传时间:2019-01-02 格式:PPT 页数:58 大小:1.67MB
下载 相关 举报
C#程序设计及应用教程第6章+窗体、控件和组件.ppt_第1页
第1页 / 共58页
C#程序设计及应用教程第6章+窗体、控件和组件.ppt_第2页
第2页 / 共58页
C#程序设计及应用教程第6章+窗体、控件和组件.ppt_第3页
第3页 / 共58页
C#程序设计及应用教程第6章+窗体、控件和组件.ppt_第4页
第4页 / 共58页
C#程序设计及应用教程第6章+窗体、控件和组件.ppt_第5页
第5页 / 共58页
点击查看更多>>
资源描述

1、第6章 窗体、控件和组件,6.1 窗体与对话框 6.2 控件共有的基本操作 6.3 容器类控件和组件 6.4 文本操作类控件 6.5 选择操作类控件 6.6 图像操作类控件和组件 6.7 菜单、工具栏与状态栏 6.8 视图操作类控件 6.9 其他常用控件,6.1 窗体与对话框,1、窗体应用程序的启动和停止 使用Application类提供的静态方法来启动、停止应用程序。Application类提供的方法: Run方法:用于在当前线程上启动应用程序消息循环,并显示窗体。 Exit方法:用于停止消息循环。 DoEvents方法:用于在程序处于某个循环中时处理消息。,6.1.2 窗体的创建、显示与隐

2、藏,1、如何在代码中打开一个新窗体Form2 fm = new Form2();fm.Show(); /或者fm.ShowDialog(); 2、如何在代码中关闭一个窗体用法1:fm.Close();用法2:this.Close();用法3:Application.OpenForms“Form1“.Close(); 3、如何隐藏一个打开的窗体(1)隐藏当前窗体:this.Hide();(2)隐藏其它窗体:Application.OpenForms“Form1“.Hide(); 4、如何重新显示隐藏的窗体(1)显示当前窗体:this.Show();(2)显示其它窗体:Application.Op

3、enForms“Form1“.Show();,6.1.2 窗体的创建、显示与隐藏,【例6-1】演示窗体的基本用法以及如何显示和关闭窗体。 部分运行效果如图:,6.1.3 窗体常用的属性,常用属性: Name:获取或设置窗体的名称,代码中通过该属性来访问窗体。 BackColor:获取或设置窗体的背景色。 ForeColor:获取或设置窗体上文本的前景色。 Location:获取或设置以屏幕坐标表示的代表窗体左上角的坐标位置。 Size:指定窗体的高度和宽度。 Text:设置控件上所要显示的文本,如标签、按钮和复选框等控件上的文字。,窗体常用的属性和外观控制,StartPostion:获取或设置

4、运行时窗体的起始位置,一般在构造函数中设置此属性。 例如: this.StartPosition = FormStartPosition.Manual; this. Location = new Point(screenX, screenY); 通过设置窗体的【ControlBox】属性为“True”或者“False”,可以控制是否显示最大化、最小化以及关闭按钮。除此之外,还可以通过设置窗体的【FormBorderStyle】属性控制窗体的边框样式。,6.1.4 窗体位置及外观控制,【例6-2】演示如何控制窗体的显示位置以及如何控制窗体的外观形状。设计视图如下:,运行效果如下:,6.1.5 单

5、文档窗体和多文档窗体,Windows的窗体分为单文档窗体和多文档窗体。 多文档窗体(Multi-Document Interface, MDI)是指在一个主窗体中可以包含一个或多个子窗体的窗体,主窗体称为MDI父窗体,子窗体称为MDI子窗体。,6.1.5 单文档窗体和多文档窗体,【例6-3】演示MDI窗体的基本用法以及如何显示和关闭子窗体。,6.1.6 对话框,对话框用于与用户交互和检索信息。 对话框分为标准对话框和自定义对话框。 1MessageBox对话框调用MessageBox类的静态Show方法来显示消息对话框。返回值是MessageBoxResult枚举的值,其中每个值都等同于消息对

6、话框可以显示的按钮之一。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:在消息框的标题

7、栏中显示的文本。 buttons:MessageBoxButtons枚举值之一,指定在消息框中显示哪些按钮。枚举值有OK、OKCancel、YesNoCancel和YesNo。 icon:MessageBoxIcon枚举值之一,指定在消息框中显示哪个图标。枚举值有None(不显示图标)、Hand(手形)、Question(问号)、Exclamation(感叹号)、Asterisk(星号)、Stop(停止)、Error(错误)、Warning(警告)和Information(信息)。 Show方法的返回值是DialogResult枚举值之一。DialogResult枚举值有:None(消息框未返

8、回值)、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 对话框,自定义窗体

9、对话框的设计方法与设计一般窗体基本相同,不同之处是还要对自定义窗体对话框作如下处理: 将窗体的【FormBorderStyle】属性更改为“FixedDialog”。 将窗体的【MaximizeBox】属性、【MinimizeBox】属性和【ControlBox】属性设置为“False”。 在窗体上放一个“确定”按钮,一个“取消”按钮。然后将窗体的【AcceptButton】属性设置为“确定”按钮,【CancelButton】属性设置为“取消”按钮。 在按钮事件中,设置DialogResult类型的返回值,以便让对话框隐藏起来。,6.1.6 对话框,【例6-4】自定义窗体对话框的用法。设计视图

10、如下:,运行效果如下:,6.2 控件共有的基本操作,6.2.1 控件中常用的属性和方法 1.常用基本属性除了书上讲的属性外,注意以下属性的用法: 1) (Name):指定控件的名称,它是控件在当前应用程序中的唯一标识,代码通过该属性来访问控件 2) Enabled:决定控件是否可用,取值为true时可用,取值为false时不可用 3)Anchor属性:保持控件与边框的距离不变 4)Dock属性:让控件始终紧靠边框,6.2.1 控件中常用的属性和方法,2.将窗体中控件的背景色设置为“Transparent”,则该控件相对于其父容器是透明的。 【例6-5】将图像和文字叠加在同一幅背景图上,让其看起

11、来像是一幅图。,未设置BackColor属性时的设计界面 设置BackColor属性后的界面效果,6.2.1 控件中常用的属性和方法,3.按住键同时选中多个控件,然后利用“布局”快捷工具栏中的快捷方式可以快速让各控件对齐。 4.利用布局工具栏中的“键顺序”按钮,可以在设计界面下调整焦点顺序。,6.2.2 控件的锚定和停靠,1Anchor属性 【Anchor】属性定义控件的定位点位置。当控件锚定到某个窗体时,如果用户调整该窗体的大小,该控件将维持它与定位点位置之间的距离不变。 2. Dock属性 【Dock】属性的用途是使控件与窗体边缘对齐。此属性指定控件在窗体中的驻留位置。 【Dock】属性设

12、置为下列值: Left 停靠到窗体的左侧。 Right 停靠到窗体的右侧。 Top 停靠到窗体的顶部。 Bottom 停靠到窗体底部。 Fill 占据窗体中的所有剩余空间。 None 不在任何位置停靠,它显示在由Location属性指定的位置。,6.2.3 常用的鼠标事件和键盘事件,1.鼠标事件 Click 单击鼠标左键时触发 MouseDoubleClick 双击鼠标左键时触发 MouseEnter 鼠标进入控件可见区域时触发 MouseMove 鼠标在控件区域内移动时触发 MouseLeave 鼠标离开控件可见区域时触发 2.键盘事件 KeyDown 按下键盘上某个键时触发 KeyUp 释

13、放键盘上的按键时触发 KeyPress 在KeyDown之后KeyUp之前触发,非字符键不会触发该事件。,6.2.3 常用的鼠标事件和键盘事件,【例6-6】演示鼠标和键盘事件的触发条件,触发顺序,并显示各个事件所传递的参数内容。 设计界面如下:,6.3 容器类控件和常用控件,1、分组控件Panel控件和GroupBox控件用于对不同的控件进行分组。Panel控件不显示标题但可以有滚动条,而GroupBox可显示标题,不显示滚动条。 2、工具提示控件(ToolTip)ToolTip组件用于在用户指向控件时显示相应的提示信息。 3、错误提示组件(ErrorProvider)ErrorProvide

14、r组件可以对窗体或控件上的用户输入进行验证。 4、Timer组件:主要用于设置某个时间间隔,并在每次到达设置的时间间隔时,触发指定的事件。该组件常用的属性是【Enabled】属性和【Interval】属性。,Timer控件,【例6-7】利用Timer组件和Label控件,在窗体上方显示类似电影字幕的不停向上滚动的文本,并在窗体下方显示一个简单的时钟信息。 左图为设计界面,右图为运行效果。,6.4 文本类操作控件,标签类控件(Label、LinkLabel)操作控件包括: 1、Label:用于提供控件或窗体的描述性文字,以便为用户提供相应的信息。常用属性:Text属性。 2、LinkLabel:

15、 与Label控件的作用非常相似,不同的是LinkLabel控件以超链接的形式显示文本信息。当用户单击LinkLabel控件时,会触发LinkClicked事件。可以在LinkClicked事件中编写代码让其链接到指定的网页。,6.4.2 文本操作类控件,1.文本框(TextBox)控件常用的基本属性 1) Text:表示文本框中显示的内容。 2) MaxLength:表示用户可以在文本框控件中最多键入的字符数,默认值为32767个字符。注意,由于使用的是Unicode字符,所以对中文和英文的字符计数方法是相同的,即一个英文字符的长度为1,一个汉字字符的长度也是1。 3) Multiline:

16、表示是否可以包含多行内容。 4) PasswordChar:用于指定在屏蔽TextBox控件中输入的密码字符时所要使用的符号。 2. TextBox控件常用的基本事件TextChanged:表示文本框中的当前内容(Text属性值)更改时触发的操作。,6.4.2 文本操作类控件,2.MaskedTextBox:掩码文本框。它的主要作用是控制输入文本的格式。如果输入的内容不满足规定的格式,则拒绝用户输入。常用属性【Mask】属性,用于设置当前掩码文本框输入字符的格式。 3.RichTextBox:主要功能是进行高级文本输入和编辑,作为一般的文本输入,其属性、事件与TextBox控件的属性、事件大致

17、相同。,6.4.2 文本操作类控件,【例6-8】演示TextBox控件、ToolTip组件和ErrorProvider组件的用法。 设计界面如下:,6.5 选择类控件,1、列表类控件(ListBox控件、ComboBox控件)ListBox(列表框)控件和ComboBox(下拉框)控件均用于显示一组条目,以便操作者从中选择一条或者多条信息,并对其进行相应的处理。 这两个控件常用的属性和方法 Items SelectedIndex、SelectedItem SelectedItems Items.Add Items.AddRange Items.Remove、Items.RemoveAt Ite

18、ms.Clear,6.5.1 选择类控件,1、ListBox控件的其他属性 MutiColumn属性:决定是否可以以多列的形式显示各项。 SelectionMode属性:选择列表项的方式。 HorizontalScrollbar属性:获取或设置一个值(true或者false),该值指示是否在控件中显示水平滚动条。 2、ComboBox控件的其他属性 DropDownStyle属性:表示组合框的显示样式,它有3种选择形式。 MaxDropDownItems属性:设置打开列表框时所显示的最大条目数。,6.5.1 选择类控件,【例6-9】设计一个简单的选修课程修改界面,从可选项中选择课程添加到选修的

19、课程列表内。如果可选项中没有提供所选课程,允许用户直接键入新课程,并自动将键入的新课程添加到供选择的课程中。 设计界面如下:,6.5.2 复选框控件,CheckBox控件 1.三种状态 2.常用属性Checked属性 3.常用事件CheckedChanged事件,CheckBox控件,【例6-10】设计一个窗体,让用户选择球类参赛项目,要求用一个复选框表示是否参加所有比赛项目,如果只参加了部分球赛项目,该复选框用“不确定”状态表示。 设计界面如下:,6.5.2 CheckedListBox控件,常用属性 (1) Items属性:项的集合。 (2) Count属性:项的数目。 (3) Check

20、edItems属性:获取选中项的集合。 (4) CheckedIndices属性:获取选中项索引的集合。(4) MultiColumn属性:true或false。 常用事件:SelectedIndexChanged事件。 常用方法: (1) GetItemChecked方法:获取指定项是否被选中 。 (2) SetItemChecked方法:设置某个复选框的选中状态。,CheckedListBox控件,【例6-11】设计一个简单的课程选择界面,演示CheckedListBox控件的用法。 左图为设计界面,右图为运行效果。,6.5.3 RadioButton控件,1.特点: (1)单选 (2)以

21、各自所在的容器来划分组,如果在一个窗体上创建多个单选按钮组,可以使用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)ShowUpD

22、own属性5)CustomFormat属性 3、如果希望利用该控件仅让用户编辑时间(时分秒),需要将它的【ShowUpDown】属性设置为“True”,并将其【Format】属性设置为“Time”。也可以利用该控件显示并让用户编辑日期和时间,此时需要将其【Format】属性设置为“Custom”,并设置其【CustomFormat】属性指定日期时间格式字符串。,6.5.4 日期选择控件,【例6-13】演示DateTimePicker控件的用法。,设计界面如下:,运行界面如下:,6.6 图像操作类控件,PictureBox控件:显示图片。 1.常用属性1) Image:获取或设置显示的图像2)

23、SizeMode:AutoSize、CenterImage、Normal、StretchImage、Zoom3) Parent:(仅代码方式下可用):获取或设置父级控件 2.加载和清除图片 /加载图片 if (pictureBox1.Image != null) pictureBox1.Image.Dispose( ); string fileName= Application.StartupPath + “MyImage.gif“; pictureBox1.Image = Image.FromFile(fileName); /清除图片 if (pictureBox1.Image != nul

24、l) pictureBox1.Image.Dispose( );pictureBox1.Image = null; ,PictureBox控件,【例6-14】演示如何将图像拖放到RichTextBox控件内。,设计界面 运行界面,6.6 图像操作类控件,ImageList控件:图像列表控件。 1.ImageList组件用于保存一组图像,然后供其他控件显示一组图像中的某一个图像,例如 ListView控件、TreeView控件等。 2.常用属性:ImageList组件的主要属性是【Images】属性,它包含关联的控件将要使用的图片。每个单独的图像可通过其索引值或其键值来访问,其中索引值用【Ima

25、geIndex】属性来设置,键值用【ImageKey】属性来设置。,ImageList控件,【例6-15】演示如何利用ImageList组件动态改变按钮图像的状态。 运行效果如下:,6.7 菜单与工具栏,6.7.1 MenuStrip控件 MenuStrip控件用于设计菜单。菜单的组成:,6.7.1 MenuStrip控件,MenuStrip控件的常用属性(1) Dock:指示菜单栏在窗体中停靠的位置,默认值为Top。(2) Items:菜单栏上显示的各菜单项。 MenuItem菜单项的常用属性 (1) DisplayStyle:菜单项上的显示样式。 (2) Image:指定在该菜单项上显示的

26、图标。 (在C:Program FilesMicrosoft Visual Studio 8Common7VS2005ImageLibrary下有一个.zip文件,内有各种动画文件、图像文件和图标文件,例如展开后在目录bitmapscommandspngformat下有打开、保存等图像。) (3) ShortcutKeys:快捷键。 MenuItem菜单项的常用事件 Click事件,6.7.2 ContextMenuStrip控件,用于制作右键快捷菜单 使用该控件的关键是将需要显示快捷菜单的控件的ContextMenuStrip属性设置为添加的ContextMenuStrip控件对象。 除了是

27、右键弹出外,其他用法与MenuStrip相同。,6.7.3 ToolStrip控件,ToolStrip控件的作用是为Windows应用程序添加工具栏。工具栏一般是由多个按钮、标签等排列组成,通过这些项可以快速地执行程序提供的一些常用命令,比使用菜单选择更加方便快捷。 ToolStrip控件的常用属性和事件与MenuStrip控件基本相同,工具栏上各项的属性和事件与MenuStrip控件中菜单项基本相同。,6.7.4 StatusStrip,StatusStrip控件的作用是向窗体中添加状态栏,状态栏一般由文本提示信息组成。 StatusStrip控件一般由ToolStripStatusLabe

28、l对象组成,每个这样的对象都可以显示文本、图标或者同时显示文本和图像。,6.7.4 StatusStrip,【例6-16】演示菜单与工具栏相关控件的用法。,设计界面 运行界面,6.8 视图类控件,6.8.1 列表视图控件(ListView) ListView(列表视图)控件用列表的形式显示一组数据,每项数据都是一个ListItem类型的对象,称之为项,同时每个项还可能会有多个描述的子项。 一般使用ListView来显示分类查询及其详细信息。 常见属性:表6-17。,6.8.1 列表视图控件(ListView),【例6-17】演示ListView控件的用法。,设计界面 运行界面,6.8.2 Tr

29、eeView控件,常用属性 Nodes:TreeView控件的节点集合 SelectedNode:当前选定的树节点 ImageIndex:获取或设置默认的图像列表的索引值 SelectedImageIndex:节点选定时显示的图像列表的索引值 举例说明使用方法 设计模式下编辑树节点 代码模式下编辑树节点,6.8.2 TreeView控件,【例6-18】演示TreeView控件的用法。 设计界面如下:,6.9其他常用控件,1、选项卡控件(TabControl)TabControl控件用于创建带有多个选项卡(TabPages)的窗口,每个选项卡都相当于一个对话窗口容器,可以在其中独立地存放其他控件

30、对象。 常用属性: ImageList属性:获取或设置当前TabControl控件中的各个标签页使用的图标集合。 MultiLine属性:获取或设置是否可以创建多行选项卡。 TabPages属性:获取该选项卡控件中选项卡页的集合。,6.9.1 选项卡控件(TabControl),【例6-19】演示TabControl控件的用法。,设计界面 运行界面,6.9.2 面板复合控件,2、面板复合控件(SplitContainer)SplitContainer控件是由两个Panel面板和一个Split拆分条组成的复合体,两个Panel之间的拆分条可以拖动。,6.9.2 面板复合控件,【例6-20】演示SplitContainer控件的基本用法。 运行效果如下:,6.9.3 任务栏图标组件(NotifyIcon),3、任务栏图标组件(NotifyIcon)NotifyIcon组件主要用于显示通知区域中的图标。NotifyIcon是一个比较特殊的组件,只有运行时才能显示。 常用属性: 【Icon】属性设置出现在状态区域的图标。 【Visible】属性控制是否让图标显示出来。 【Text】属性来指定将鼠标指针放置在图标上时显示的提示信息。,6.9.3 任务栏图标组件(NotifyIcon),【例6-21】演示NotifyIcon控件的基本用法。,运行效果:,设计效果:,

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

当前位置:首页 > 实用文档 > 简明教程

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报