第6章用户界面设计.ppt

上传人:本田雅阁 文档编号:3503110 上传时间:2019-09-04 格式:PPT 页数:73 大小:942.05KB
返回 下载 相关 举报
第6章用户界面设计.ppt_第1页
第1页 / 共73页
第6章用户界面设计.ppt_第2页
第2页 / 共73页
第6章用户界面设计.ppt_第3页
第3页 / 共73页
第6章用户界面设计.ppt_第4页
第4页 / 共73页
第6章用户界面设计.ppt_第5页
第5页 / 共73页
点击查看更多>>
资源描述

《第6章用户界面设计.ppt》由会员分享,可在线阅读,更多相关《第6章用户界面设计.ppt(73页珍藏版)》请在三一文库上搜索。

1、Visual C# 程序设计基础 XXXXXX大学计算机系基础教研室,第六章 用户界面设计,6.1 常用控件 6.2 列表框和组合框 6.3 用户交互界面 小结和习题,6.1 常用控件,System.Windows.Forms命名空间中的控件,6.1 常用控件,System.Windows.Forms命名空间中的控件,6.1 常用控件,System.Windows.Forms命名空间中的控件,6,6.1.1 单选按钮(RadioButton) 单选按钮控件是一个能开能关的控件,通常由两个以上的单选按钮组成选项组,但这些单选按钮在同一时刻只能选一个。 重要属性: Text属性 按钮上显示的文本

2、Checked属性 表示单选按钮的状态: True 被选定 False 未被选定,6.1 常用控件,7,重要事件: Click事件 单击后,使Checked属性为True CheckedChanged事件 当某个单选按钮的状态被发生变化,该事件随之被触发。,本章目录,6.1.1 单选按钮,8,重要属性: CheckState 属性 表示复选框状态 Unchecked 未选定 Checked 被选定 Indeterminate 不确定 重要事件: Click CheckedChanged,6.1.2 复选框(CheckBox),9,包括面板控件(Panel)、分组控件(GroupBox)和多页面

3、控件(TabControl) 先建立框架,然后将各控件放置其中。 1.面板控件Panel 面板可以响应Click和DoubleClick事件,但一般不需要编写事件过程。,本章目录,6.1.3框架,10,2分组框GroupBox 分组控件把其他的控件组织在一起形成控件组。当框架移动时,控件可以相应地移动;框架隐藏时,控件也一起隐藏。 重要属性: Text属性:给分组框加一个标题,使用户了解分组框的用途。,本章目录,6.1.3框架,11,3TabControl控件 TabControl控件很像一个卡片盒或一组文件标签,将一些相关内容组织在一个选项卡中,在同一个窗口区域通过选择标签转换显示不同的选项

4、卡。 TabControl可以响应Click和DoubleClick事件,但该控件只是用来做界面的切换,很少对它们的事件进行处理 。,本章目录,6.1.3框架,6.1.4 应用实例,【例6-1】编写计算机选课程序 课程有三个等级,第一门课是基础课,第二门课是语言课,都为限选,第三门应用课是任选课。学生每选一门课,学生的选课情况立即显示在下面的多行文本框中。,13,6.2.1 列表框(ListBox) 列表框可显示多个选项供用户选择,不能直接修改其中的内容。如果选项的数量超过可显示的区域,列表框会自动地增加滚动条。,本章目录,6. 2 列表框和组合框,ListBox控件常用的属性,(1) Ite

5、ms Items是一个集合 是ArrayList类对象 Items中选项的序号是从0开始的。 Items属性既可以在设计状态设置,也可以在程序中设置。,ListBox1.Items(3),ListBox控件常用的属性,(2) SelectionMode 设置用户是否能够在列表项中做多个选择 None:不允许选择; One:只能单选而不允许有多项选择; MultiSimple:允许有简单的多项选择; MultiExtended:允许有扩展式多项选项,即用户使用“Shif+单击”或“Shift+方向键”,可以将先前的选项扩展到当前选项,使用“Ctrl+单击” 可以进行各项选择。,16,(3) Se

6、lectedIndex 表示在程序运行时被选定的项的序号。只能在程序中设置或引用。 如果未选中任何选项,则SelectedIndex为-1。,SelectedIndex=3,本章目录,ListBox控件常用的属性,17,(4) SelectedItem 列表中选中的字符串。如允许多选,该属性返回选择的索引号最小的条目。如一个也没选,该值为空。 (5) SelectedItems 获取包含 ListBox 中当前选定项的集合。,本章目录,ListBox控件常用的属性,18,(6) MultiColumn ListBox是否支持多列。如果设置为True,则列表框支持多行显示,默认认为False。

7、(7) Sorted 程序运行期间列表框或组合框的选项是否按字母表顺序排序。如果Sorted为True,则选项按字母表顺序显示,本章目录,ListBox控件常用的属性,ListBox控件常用的方法,(1) Items.Add 对象.Items.Add(选项) 把一个选项加入列表框 例如:ListBox1.Items.Add(“王涛“) (2) Items.Remove 对象. Items.Remove (选项) 从列表框中删除指定的项 例如:ListBox1.Items.Remove (“李明“),20,ListBox控件常用的方法,(3)Items.Insert 对象.Insert(Inde

8、x,Item) 在列表框中插入指定的项。Index表示在列表框中插入的位置。 例如:ListBox1.Insert(4,”赵明”) (4) Items.Clear 对象.Items.Clear 用于清除列表框的所有项目 例如:ListBox1.Items.Clear,21,6.2.2 组合框(ComboBox ) 组合框是文本框和列表框组合而成的控件。可以在文本框输入字符,其右侧有一个向下的箭头,单击此箭头可以打开一个列表框,可以从列表框中选择希望输入的内容。它有三种不同类型:,本章目录,6. 2 列表框和组合框,ComboBox控件常用的属性,Items:同列表框 Sorted:同列表框 S

9、electedItem:同列表框 SelectedIndex:同列表框 MaxDropDownItems:下拉列表能显示的最大条目数(1100),如果实际条目数大于此数,将出现滚动条。,ComboBox控件常用的事件,Click、DoubleClick SelectedIndexChanged:在 SelectedIndex 属性更改后发生,6.2.3 应用实例,【例6-2】编写选课程序。 利用列表框和组合框增加和删除相关课程,并统计学时数。,6.3 用户交互界面,用户界面的作用是负责管理与用户之间的交互,向用户显示数据,从用户处获得数据,解释由用户操作所引发的事件,并帮助用户查看任务的进度。

10、,6.3.1 滚动条和进度条,滚动条(ScrollBar)通常附在窗体上协助观察数据或确定位置,也可作为数据输入工具。滚动条有水平(HScrollBar)和垂直(VScrollBar)两种。 进度条(ProgressBar)用来指示事务处理的进度。,滚动条的主要属性,(1)Value属性:Value值的大小决定了滚动条中滑块的位置,反过来滑块的位置也影响值的大小。 在程序中使用该属性的语法如下: Object.value=number (2)Minimum(最小值)属性:将滑块移到滚动条的最左端或最上端时,滚动条的属性值达到最小,默认值为0。 (3)Maxinum(最大值)属性:将滑块移到滚动

11、条的最右端或最下端时,滚动条的属性值达到最大,默认值为100。,滚动条的主要属性,(4) Smallchange(小变化)属性:当用鼠标在滚动条端点的某一箭头上单击时,属性值就相应地增加或减少。属性的设置值是用户每单击一次鼠标,属性增加或减少的量。 (5)Largechange(大变化)属性:当用鼠标在滚动条端点与滑块之间的任一位置单击时,属性值就相应地大幅增加或减少。属性的设置值是用户每单击一次鼠标,属性增加或减少的量。,滚动条的事件,(1)ValueChanged事件当通过 Scroll 事件或以编程方式更改Value属性时发生。 (2)Scroll事件在通过鼠标或键盘操作移动滚动框后发生

12、。,进度条,ProgressBar(进度条)控件使用矩形方块从左至右显示某一过程的进程情况。 属性: (1)Maximum/Minimum:读取或设置进度条的最大/小计数值。 (2)Value用于读取或设置进度条的当前计数值。 在对ProgressBar编程时,必须先确定Value属性上限。例如,下载文件,可将Maximum设置为文件长度。在该文件下载过程中,将Value属性设置为文件已经下载的字节数。,进度条的常用事件,Click、MouseDown和MouseMove 【例6-3】滚动条和进度条应用。 用水平滚动条来设定参与运算的序列的长度,用进度条显示不同长度序列的处理进度不同,6.3.

13、2 定时器,定时器以一定的时间间隔产生Tick事件 属性 Enabled:为False时定时器不产生Tick事件 Interval 触发Tick事件的间隔,单位ms 事件 定时器控件只有一个Tick事件 产生Tick事件条件: Enabled=True; Interval0 方法 Start、Stop,定时器实例,【例6-4】实时时钟。,6.3.3菜单设计,1 菜单设计概述 菜单有下拉式菜单和弹出菜单(上下文菜单)。下拉式菜单的组成结构:,菜单设计概述,VS2008 .NET的菜单类包括MenuStrip,ToolStrip,ContextMenuStrip,StatusStrip四种控件,

14、MenuStrip为菜单条,ToolStrip为工具条,ContextMenuStrip是快捷菜单,StatusStrip是状态条。主要给读者介绍MenuStrip和ContextMenuStrip的使用。 MenuStrip控件的图标为 。 ContextMenuStrip控件的图标为 。 热键:当按住ALT键后,再按顶级菜单项的热键字符,可以打开该顶级菜单项的弹出菜单。 “编辑(E)” 快捷键 :用户可以不打开主菜单,只要按住Ctrl键不放,再按快捷键字符,MenuStrip的常见属性,AllowItemReorder:默认值为False,当更改该属性值为True时,按下ALT键的同时可以

15、用鼠标拖动各菜单项以调整其在菜单栏上的左右位置。 Dock属性:指示菜单栏在窗体中出现的位置,默认值为Top。 GripStyle属性::是否显示菜单栏的指示符,即纵向排列的多个凹点,默认值为Hidden。当更改该属性值为Visible时,显示位置由GripMargin属性指定。,MenuStrip的常见属性,Items:用于编辑菜单栏上显示的各菜单项。单击Items属性后“”按钮,弹出“项集合编辑器”对话框 。,MenuStrip的常见属性,ShowItemToolTips :是否显示MenuStrip的工具提示。 Stretch:指示只是MenuStrip是否在其容器中从一端拉伸到另一端。

16、,MenuStrip的常用事件,ItemClicked:当单击菜单栏上各主菜单项时触发的操作。 LayoutCompleted:当菜单栏上各主菜单项的排列顺序发生变化之后触发的操作。使用该事件时,AllowItemReorder属性必须设为True,即当程序运行时,按下Alt键重新排列菜单栏上各主菜单项的顺序之后触发该事件。,菜单项ToolStripMenuItem,属性: Name:菜单项的名字。 Checked:指示菜单项是否被选中,默认值为False。 CheckOnClick:决定单击菜单项时是否使其选中状态发生改变。默认值为false,即单击菜单项不会影响其Checked属性。 Ch

17、eckState:指示菜单项的状态。与复选框CheckBox控件的CheckState属性相同,共有3个属性值:Checked,Unchecked和Indeterminate。,菜单项ToolStripMenuItem,属性: DisplayStyle:指示菜单项上的显示内容。共有4个属性值:None,Text,Image和ImageAndText,默认值为ImageAndText。 DropDownItems:单击该属性后的“”按钮,调出“项集合编辑器”对话框,以此编辑该菜单项对应的子菜单中的各菜单项。 Image:指定在该菜单项上显示的图标。 ImageScaling:指定是否调整图标大小

18、,默认属性值为SizeToFit,即调整图标大小以适应菜单项。该属性的另一个属性值为None,即不调整图标大小。,菜单项ToolStripMenuItem,属性: ShortCutKeys:为菜单项指定快捷键。单击该属性后的下拉按钮,出现设置页面,用于设置菜单项的快捷组合键。该属性的默认值为None。,菜单项ToolStripMenuItem,属性: ShowShortCutKeys:指示是否在菜单项上显示快捷键,默认值为True,即在菜单项上按照ShortCutKeys属性的设置显示快捷键。 Text属性:指示菜单项标题。 ToolTipText属性:控件的ToolTip文本。,菜单项Too

19、lStripMenuItem,事件: Click事件:单击菜单项时触发。 DropDownClosed:关闭菜单项的子菜单时触发的操作。 DropDownItemClicked:单击菜单项的子菜单中任何一项时触发的操作。 DropDownOpened:菜单项的子菜单打开之后触发的操作。 DropDownOpening:打开菜单项的子菜单时触发的操作。,弹出菜单ContextMenuStrip,属性: AllowTransparency:是否能调整窗体的不透明度。 AutoClose:是否能在不激活时自动关闭。 AutoSize:是否能自动调整大小。 DefaultDropDownDirecti

20、on:控件的显示方向。 DisplayRectangle:获取显示区域的矩形。,弹出菜单ContextMenuStrip,属性: DropShadwnEnabled:是否显示三维阴影的值。 Items:获取ToolStrip的所有子项。 LayoutStyle:是否子项的显示方式。 Opacity:确定窗体的不透明度。 OwnerItem:为此 ToolStripDropDown 所有者的 ToolStripItem。 Region:与 ToolStripDropDown 关联的窗口区域。,弹出菜单ContextMenuStrip,属性: ShowCheckMargin:是否在 ToolStr

21、ipMenuItem 的左边缘显示选中标记的位置。 ShowImageMargin:是否在 ToolStripMenuItem 的左边缘显示图像的位置。 SourceControl:获取上一个使此 ContextMenuStrip 被显示的控件。 TextDirection:指定项上的文本绘制方向。,创建主菜单,【例6-5】文本编辑器。,创建弹出菜单,主菜单通过窗体的MainMenuStrip属性设定其主菜单。 菜单可以通过窗体中对象的ContextMenuStrip属性设定某个弹出菜单绑定到此对象。 给文本框tbContent绑定弹出菜单: tbContent.ContextMenuStri

22、p = ContextMenuStrip1;,6.3.4 鼠标事件,MouseDown:如果鼠标位于控件区域,按下鼠标按键。 MouseUp:如果鼠标位于控件区域,抬起鼠标按键。 MouseMove:如果鼠标在控件区域移动。 MouseEnter:鼠标进入控件区域。 MouseLeave:鼠标离开控件区域。,6.3.4 鼠标事件,鼠标事件处理函数一般有两个参数: object sender:产生该事件的对象的属性Name的值,例如,为Form1的MouseDown事件增加事件函数,单击Form1,第一个参数sender代表Form1对象。 System.Windows.Forms.MouseE

23、ventArgs e:代表事件的一些信息,事件不同,所代表的信息也不相同,鼠标按下事件处理函数中,e.X为发生事件时鼠标位置的x坐标,e.Y为发生事件时鼠标位置的y坐标,e.Button为MouseButtons.Left,表示单击了鼠标左键等等,Right和Middle则分别代表右键和中间键。e.Clicks为鼠标单击的次数,如果大于2次,则为双击。,鼠标事件应用,【例6-6】在窗体中的指定区域,单击或双击鼠标左键或右键,用Label控件显示鼠标的事件和位置。,6.3.5 对话框设计,在图形用户界面中,对话框是一种特殊的窗体 向用户显示信息 获得用户的响应 在C#.NET中,对话框根据其用途

24、可以分为消息框、通用对话框和打印组件三大类。,消息框,C#中通过MessageBox类实现消息框的定义。 MessageBox.Show(“欢迎!”); MessageBox.Show(“大家晚上好!“,“问候“); MessageBox.Show(“是否继续?“,“警告“, MessageBox Buttons.YesNoCancel);,消息框,C#中通过MessageBox类实现消息框的定义。 MessageBox.Show(“程序发生错误!“,“警告“, MessageBoxButtons. RetryCancel, MessageBoxIcon.Warning); MessageBo

25、x.Show(“程序发生错误!“,“警告“, MessageBoxButtons. RetryCancel, MessageBoxIcon.Warning, MessageBoxDefaultButton. Button2);,通用对话框,利用通用对话框类控件可在窗体上创建打开文件、保存文件、颜色、字体、打印设置、打印预览等对话框。,通用对话框,通用对话框控件继承了System.Windows.Forms. CommonDialog类,.NET Framewrek中提供了多个常用的对话框控件和对应的类。,打开文件和保存文件,属性: Filter:字符串类型,选择在对话框中显示的文件类型。 Fi

26、lter=“纯文本文件(*.txt)|*.txt|所有文件(*.*)|*.*” FilterIndex:表示打开对话框后,对话框的文件类型(T)下拉列表编辑框的下拉列表中首先被选中的项的索引号。 可以在设计阶段在属性窗口修改属性FilterIndex和Filter,也可在程序中用下列语句修改:openFileDialog1.Filter=“纯文本文件(*.txt)|*.txt|所有文件(*.*)|*.*“ openFileDialog1.FilterIndex=1,打开文件和保存文件,属性: FileName:用户选取的文件的路径和文件名。 InitialDirectory:打开对话框首先显示

27、该属性指定的文件夹中的文件。 CheckPathExists:在对话框返回之前,检查指定路径是否存在。 DefaultExt:如果用户未指定扩展名,自动增加属性指定的文件扩展名。 RestoreDirectory:控制对话框在关闭之前是否恢复当前目录。 ShowHelp:启用“帮助”按钮。 Title:将显示在对话框标题栏中的字符。 ValiDateNames:控制对话框检查文件名中是否不含有无效的字符或序列。,打开文件和保存文件,事件: FileOk:用户点击“打开”或“保存”按钮时要处理的事件。 HelpRequest:当用户点击“帮助”按钮时要处理的事件。 方法: ShowDialog(

28、):打开对话框,根据方法的返回值确定用户单击了那个按钮,如返回DialogResult.Cancle,用户单击了忽略按钮,如返回DialogResult.OK,用户单击了打开或保存按钮。 Reset():将所有属性重新设置为默认值。,颜色对话框(ColorDialog),属性 Color:用来设置和获取用户选定的颜色。,字体对话框(FontDialog),属性: ShowColor:控制是否显示颜色选项。 AllowScriptChange:是否显示字体的字符集 Font 在对话框显示的字体。 AllowVerticalFonts:是否可选择垂直字体。 Color:在对话框中选择的颜色。 Fo

29、ntMustExist:字体不存在时是否显示错误。 MaxSize:可选择的最大字号。 MinSize:可选择的最小字号。,字体对话框(FontDialog),属性: ScriptsOnly:指示对话框是否允许为所有非OEM 和Symbol 字符集以及ANSI 字符集选择字体。 ShowApply:是否显示“应用”按钮。 ShowEffects:是否显示下划线、删除线、字体颜色选项。 ShowHelp:是否显示“帮助”按钮。,字体对话框(FontDialog),事件: Apply:点击“应用”按钮时要处理的事件。 HelpRequest:点击“帮助”按钮时要处理的事件。 方法: ShowDia

30、log():打开对话框。 Reset():将所有属性重新设置为默认值。,打印组件,PrintDocument类 是用于完成打印的类。 属性DocumentName:字符串类型,记录打印文档时显示的文档名。 方法Print:开始文档的打印。 事件BeginPrint:在调用Print方法后,在打印文档的第一页之前发生。 事件PrintPage:需要打印新的一页时发生。 事件EndPrint:在文档的最后一页打印后发生。,打印组件,打印步骤: 创建PrintDocument组件的对象 。 使用页面设置对话框PageSetupDialog设置页面打印方式,这些设置作为要打印的所有页的默认设置。使用打

31、印对话框PrintDialog设置对文档进行打印的打印机的参数。 调用PrintDocument.Print方法来实际打印文档 。,打印组件,事件处理: 引发事件:BeginPrint、PrintPage、EndPrint ,其中每打印一页都引发PrintPage事件,打印多页,要多次引发PrintPage事件。 程序员应为这3个事件编写事件处理函数。BeginPrint事件处理函数进行打印初始化,一般设置在打印时所有页的相同属性或共用的资源,例如所有页共同使用的字体、建立要打印的文件流等。 PrintPage事件处理函数负责打印一页数据。EndPrint事件处理函数进行打印善后工作。,打印设

32、置对话框,用户使用此对话框能够设置纸张大小(类型)、纸张来源、纵向与横向打印、上下左右的页边距等。 pageSetupDialog1.Document=printDocument1; pageSetupDialog1.ShowDialog();,打印预览对话框,printPreviewDialog1.Document=printDocument1; printPreviewDialog1.ShowDialog();,打印对话框(PrintDialog),首先设置其属性Document为指定的PrintDocument类对象,打开PrintDialog对话框后,修改的设置将保存到PrintDocument类的对象中。当用户点击“确定”按钮后调用PrintDocument类的Print()方法实现打印。,6.3.6 应用实例,【例6-7】文本编辑器的实现:实现一个类似于Windows写字板的程序。,本章小结,常用控件 单选按钮、复选框、框架、列表框、组合框、滚动条、进度条、定时器 菜单设计 MenuStrip和ContextMenuStrip 对话框 消息框MessageBox 通用对话框CommonDialog 打印组件,习 题,1. 选择题(P. 19) (1) (20) 2. 填充题 (1) (15) 3. 编程题 (1) (3),

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

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1