delphi教学第05章菜单设计

上传人:tian****1990 文档编号:74711512 上传时间:2019-01-29 格式:PPT 页数:24 大小:288.46KB
返回 下载 相关 举报
delphi教学第05章菜单设计_第1页
第1页 / 共24页
delphi教学第05章菜单设计_第2页
第2页 / 共24页
delphi教学第05章菜单设计_第3页
第3页 / 共24页
delphi教学第05章菜单设计_第4页
第4页 / 共24页
delphi教学第05章菜单设计_第5页
第5页 / 共24页
点击查看更多>>
资源描述

《delphi教学第05章菜单设计》由会员分享,可在线阅读,更多相关《delphi教学第05章菜单设计(24页珍藏版)》请在金锄头文库上搜索。

1、第五章 菜单设计,菜单是Windows应用程序设计中的重要组成部分,大部分应用程序的功能靠菜单来实现。Delphi 7的可视化开发环境提供了大量的开发工具,使得Delphi 7应用程序开发中菜单的设计变得方便灵活。用户可以通过组件面板的Standard选项卡的MainMenu组件来创建用户程序的主菜单,可以用PopupMenu组件来设计下拉菜单,本章主要介绍菜单设计的基本方法。,5.1 创建主菜单,在一个标准的Windows应用程序中,菜单可以分为两级:第一级是窗口标题下的菜单栏,称为主菜单;第二级是这些菜单所包含的选项,称为菜单项。 按照菜单项的功能,可以将菜单项分为三种类型: l 命令:用

2、来执行某项操作的菜单项,这是用户最常见、使用最频繁的菜单项。 l 状态设置:用来对系统包括菜单本身的某些状态进行设置和说明,通常这些菜单项旁边都有对号()或者复选框来说明其是否处于有效状态。 l 对话框菜单项:用来激活对话框,通常不执行具体的操作,而是由用户通过对话框的操作来完成相应的任务。通常这些菜单项的旁边都有省略号()来进行识别。,5.1 创建主菜单,5.1.1 TMainMenu组件 TMainMenu组件位于组件面板的Standard选项卡上,用来创建主菜单。 1用途 TMainMenu组件用来设计用户的主菜单,一般通过鼠标和键盘的热键来激活特定的菜单项。当用户将一个TMainMen

3、u组件添加到窗体(TMainMenu组件不能改变大小),这时,Object Inspector中会显示TMainMenu组件的属性。双击该组件后,在此可进行菜单设计。 2主要属性 (1) AutoHotkeys属性:该属性用来指定选项的热键是否可以自动设置。,5.1 创建主菜单,(2) Images属性:该属性通过指定一组Bitmap或Icon文件,在MenuItem中指定Images的索引,实现在各选项旁边加入图像。 (3) Items属性:该属性用于存储主菜单中各菜单项的内容。双击Items属性右侧的“”按钮,进入菜单设计器。在菜单设计器下,所添加的每个选项也将对应一组属性。 (4) Ch

4、ecked:是否在菜单项标题边加上标志 (5)ShortCUt:指定菜单项的快捷键 (6) Groupindex:对菜单项进行分组 (7)radioitem:确定出现在菜单项上的单选标志(圆点),5.1 创建主菜单,5.1.2 主菜单的设计 现在以Word 2000主菜单和“文件”子菜单为例,介绍创建主菜单的方法,步骤如下: (1) 选择TMainMenu组件加入到窗口中。 (2) 双击TMainMenu组件,弹出菜单设计器。 (3) 在菜单设计器中加亮显示的部分是第一级菜单栏。可以在Object Inspector窗口中设置它的属性Caption、ShortCut等。在Object Insp

5、ector窗口的Caption属性中输入菜单名按下回车键后,加亮显示的位置移至下拉菜单的下一项,同时,菜单栏顶层上会出现虚线框指示下一个顶层菜单项的位置。 (4) 设置快捷键和热键。 在Object Inspector窗口中可以方便地完成热键的设置,如图5-1中,在“文件”菜单项中包含了带下划线的字符,它设置了菜单项的热键。,5.1 创建主菜单,在Caption属性的输入域中,将“&”符号放到需要指定为热键的字母前面,该字母将被用下划线显示,运行时,按Alt+热键字母可以激活该菜单项。 在Object Inspector窗口中也可以方便地完成快捷键的设置,如图5-1,在文件新建菜单项后跟有“C

6、trl+N”字符串,它表示在程序运行时,可以通过按Ctrl+N组合键来激活该菜单项的OnClick事件处理函数。可以在Object Inspector窗口中设置ShortCut属性来完成快捷键的设置。 (5) 菜单分组 将下拉式菜单中的菜单项分组是菜单设计中的常见手段,分组主要是使用分隔条,可以通过设置Caption属性为“-”(减号)来实现菜单的分隔条。(要注意只要输入一个“-”就够了,不要多输入。),5.1 创建主菜单,图5-1 Word 2000主菜单及“文件”下拉菜单,5.1 创建主菜单,(6) 为每一个菜单项增加图标 可以通过以下两种方法来为每一个菜单项增加图标: l 设置菜单项的B

7、itmap属性。 l 为TMainMenu组件指定图标列表,即通过Images属性,设置每一个菜单项的ImageIndex属性,设置要使用的图标。 (7) 设计级联菜单 所谓级联菜单,就是当鼠标选中某一菜单项时,如果该菜单项有子菜单,则子菜单并列显示于该菜单的右边。要建立级联菜单,选中要建立子菜单的菜单项,单击鼠标右键,在弹出的快捷菜单中选择“Create Submenu”命令,然后就会在原菜单项旁边出现一个向右的箭头,并带有一个空白菜单项的级联菜单。子菜单项的设置与前面所讲的设置方法相同。,5.1 创建主菜单,(8) 为菜单项指定动作 设置了菜单项的外观后,菜单栏在程序运行时只有一个空架子,

8、需要为每一个菜单项定义OnClick事件处理函数,以便完成一系列的命令。在菜单设计器中双击菜单项,或者在主窗口中单击菜单项,这时系统会自动生成该菜单项的OnClick事件处理函数的框架,为其增加特定代码便可完成特定的功能。 【例5-1】使用TMainMenu组件创建人事管理系统主菜单,界面如图5-4所示。,5.1 创建主菜单,图5-4 设计主菜单,5.1 创建主菜单,(1) 窗体设计。打开工程RsglPrj.dpr,选择FileNewForm,添加新的窗体,将窗体名的Caption属性设为MainForm,然后将TMainMenu组件添加到窗体中。 (2) 单击Items属性右边的“”按钮或双

9、击窗体中所添加的TMainMenu组件。 (3) 添加菜单项。在菜单栏上出现一个蓝色且内部有虚线的框。将Caption属性设置为“人事管理(&M)”,按“回车”键,“人事管理(M)”就出现在第一个菜单上,蓝色的框下移,用户继续添加下拉菜单项,依次添加“教师管理”、“部门管理”和“退出”。,5.1 创建主菜单,第一个菜单设计完后,单击“人事管理(M)”菜单右边的虚线框(或按键盘上的键),则开始填写第二个菜单的内容。 在“信息查询(Q)”菜单中添加“教师查询”,在“教师查询”菜单项处单击鼠标右键,在弹出的快捷菜单中选择“Create Submenu”命令,然后添加“按姓名查询”和“按职工号查询”选

10、项。按同样方法在“信息查询(Q)”菜单中添加“部门查询”,并建立相应的级联菜单。 第二个菜单设计完后,单击“信息查询(Q)”菜单右边的虚线框,开始填写第三个菜单的内容。 (4) 编写各选项所对应的代码。双击相应的选项,则进入单元代码编辑器,并给出个空过程。用户只要在其中添加所需的代码即可。,5.2 设计快捷菜单,5.2.1 TPopupMenu组件 1用途 TPopupMenu组件位于组件面板的Standard选项卡上用来建立快捷菜单。所谓快捷菜单,通常是具有常用功能的菜单,通过单击鼠标右键来激活快捷菜单。 2主要属性 (1) AutoPopup属性:该属性确定当右击时,菜单是否出现。其默认值

11、为true,当右击后出现菜单,若为false时,右击后菜单不出现。,5.2 设计快捷菜单,(2) Items属性:该属性是选项的描述,使用它可以访问关于选项的信息。 注意:当用户设计好一个菜单后,并不代表在程序执行时就可以使用,因为窗体(Form)并不知道还有快捷菜单,为此还要设置窗体的PopupMenu属性,单击PopupMenu属性右边的下三角按钮,选择窗体中所创建的快捷菜单的名字如PopupMenul,这样在程序执行时,当右击窗体后,便会弹出相应的菜单。,5.2 设计快捷菜单,5.2.2 快捷菜单设计 设计快捷菜单与设计主菜单类似,只是它只能有一个菜单(其中的项可以有子菜单)。选择组件面

12、板的Standard选项卡上TPopupMenu组件,添加到窗体中,双击TPopupMenu组件弹出快捷菜单设计器。该窗口的菜单项设计与MainMenuDesigner完全相同,这里不再赘述。 【例5-2】设计具有如图5-7所示的快捷菜单。 (1) 窗体设计。在窗体中添加一个Memo组件(位于组件面板的Standard选项卡上)和一个TPopupMenu组件。 (2) 组件的属性设置。按表5-1设置组件的属性,设置的结果,如图5-8所示。,5.2 设计快捷菜单,图5-7 设计的快捷菜单 图5-8 窗体的设计 (3) 设计快捷菜单。双击TPopupMenu组件,弹出快捷菜单设计器,在菜单栏上出现

13、一个蓝色且内部有虚线的框。将Caption属性设置为“剪切”,按“回车”键后,“剪切”一词就出现在第一个菜单上。蓝色框下移,继续设置“复制”、“粘贴”、“删除”菜单项。,5.2 设计快捷菜单,(4) 编写程序代码。编写快捷菜单的“剪切”、“复制”、“粘贴”、“删除”的OnClick事件处理程序。,5.3 使用模板设计菜单,菜单模板包括:两个不同的下拉式File菜单、一个包括对象链接与嵌入命令的Edit菜单、一个Windows菜单和两个Help菜单,另外还有一个完全的多文档界面(MDl)菜单模板。 使用菜单模板可以带来很多好处。首先,可以给用户节省大量的时间。其次,菜单模板使用的是标准的Wind

14、ows技术,如菜单命令的命名、快捷键和热键的设置等,都是采用约定俗成的格式。如果已有的菜单模板不能满足用户编写的应用程序要求,用户就只能自己动手设计菜单。同时,Delphi也允许用户将自定义的菜单加入到菜单模板中。下面介绍有关菜单模板的操作。 在Delphi 7中按照如下步骤就可以完成菜单模板的插入、创建、删除等功能:,5.3 使用模板设计菜单,(1)在窗体中添加一个TMainMenu组件。 (2) 双击TMainMenu组件,弹出主菜单设计器,单击鼠标右键,出现如图5-10所示的快捷菜单。 (3) 在图5-10中选择Insert From Template命令,出现如图5-11所示的窗口。,

15、图5-10 快捷菜单图 5-11 插入菜单模板,5.3 使用模板设计菜单,(4) 从图中选择需要的菜单模板,然后单击OK按钮,就完成了插入菜单模板的操作。如图5-12所示为File菜单模板。 (5) 如果要在空白菜单项上插入菜单模板,只需在空白菜单项上单击鼠标右键,再按照上面的步骤进行操作即可。如图5-13所示。 (6) 在图5-13的快捷菜单中有一个命令为Save As Template,该选项允许用户将自定义的菜单存为模板菜单,如图5-14所示。单击Save As Template选项,弹出Save Template对话框,如图5-15所示。选择自定义的模板菜单,单击OK按钮。,5.3 使

16、用模板设计菜单,图5-12 File菜单模板 图5-13 在空白菜单向上添加菜单模板,图5-14 存储自定义模板快捷菜单 图5-15 存储自定义模板,5.3 使用模板设计菜单,(7) Delphi允许用户删除不需要的菜单模板,同样在图5-14的快捷菜单中选择Delete Template命令,出现如图5-16所示的画面,只要选中不需要的模板,单击OK按钮就可以将其删除。,图5-16 删除模板,习题,1按照菜单项的功能,菜单项分为哪3种类型?各有什么功能? 2如何设置快捷键和热键,如何进行菜单分组? 3利用TMainMenu组件创建一个主菜单“数据查询”,包括的菜单项有:查询基本情况、查询工作情况、查询工资情况。 4利用TPopupMenu组件建立快捷菜单(包括的菜单项有:还原、最小化、移动、关闭)。 设计好后,如何使在程序执行时,右击窗体会弹出相应的菜单。 5如何利用菜单模板创建、插入、删除菜单。,练习题:,设计一个简易文本编辑器,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号