《Delphi7程序设计》第5章 菜单、工具栏和多文档的设计

第5章菜单、工具栏和多文档的设计 内容提要 区 Delphi7的菜单界面设计 区菜单的属性设置和功能代码 区工具栏的创建 区状态栏的创建 区多文档MDI程序的创建 ccccccMccccccccccc:cMMH
第5章 菜单、工具栏和多文档的设计 内容提要 Delphi7的菜单界面设计 菜单的属性设置和功能代码 工具栏的创建 状态栏的创建 多文档MDI程序的创建

5.1 De lphi7的菜单界面设计 菜单是方便用户和应用程序交互的一种方式。 Delphi7提供了一个进行 菜单设计的便捷工具 Menu Designer,通过这个菜单设计工具可方便的 进行菜单设计。 应用程序的菜单有两种形式: Main menu是一般的 Windows用户界面必须 的部件,它显示在固定的位置,一般用键盘和鼠标左键来激活菜单的功 能项;Popυ upMenu是弹出式菜单,一般以鼠标的右键或其它快捷键来激 活菜单,菜单的位置是在屏幕上“浮动”的,根据鼠标的当前位置确定。 我们将 Mainmenu和 PopupMenu统称为菜单。 Main menu和 PopupMenu都 存在于 Delphi7集成开发环境的组件面板的 Standard页面上 创建菜单时,首先要在窗体中放置一个菜单对象。然后调入Menu Designer进行菜单的详细设定。用两种方式可以进入 Menu designer ≯选中菜单部件,点动属性中 Items省略按钮。 在菜单部件上双击左键,就会出现 Menu desi gner ccccccMccccccccccc:cMMH
5.1 Delphi 7 的菜单界面设计 菜单是方便用户和应用程序交互的一种方式。Delphi 7 提供了一个进行 菜单设计的便捷工具 Menu Designer ,通过这个菜单设计工具可方便的 进行菜单设计。 应用程序的菜单有两种形式:MainMenu是一般的Windows用户界面必须 的部件,它显示在固定的位置,一般用键盘和鼠标左键来激活菜单的功 能项;PopupMenu是弹出式菜单,一般以鼠标的右键或其它快捷键来激 活菜单,菜单的位置是在屏幕上“浮动”的,根据鼠标的当前位置确定。 我们将MainMenu和PopupMenu统称为菜单。MainMenu和PopupMenu都 存在于 Delphi 7 集成开发环境的组件面板的Standard页面上。 创建菜单时,首先要在窗体中放置一个菜单对象。然后调入Menu Designer进行菜单的详细设定。用两种方式可以进入Menu Designer: ➢选中菜单部件,点动属性中Items省略按钮。 ➢在菜单部件上双击左键,就会出现Menu Designer

511主菜单 MAinmEnu的设计 Main menu组件封装了菜单栏及其菜单项。要设计窗体的主菜单, 需从组件面板的 Standard页中将该组件拖动到窗体上。然后双击该组 件,在弹出的菜单编辑对话框中编辑即可。 Menu Designer的设计界面 如下图所示。 Forml.ain lenul 文件编辑 新建 打开 保存 退出 崛cccccccccccccccccccEEEHH
5.1.1 主菜单TMainMenu的设计 TmainMenu 组件封装了菜单栏及其菜单项。要设计窗体的主菜单,只 需从组件面板的 Standard 页中将该组件拖动到窗体上。然后双击该组 件,在弹出的菜单编辑对话框中编辑即可。Menu Designer 的设计界面 如下图 所示

512弹出式菜单TP。 pupMenu的设计 TPopup menu组件为右击组件时显示的弹出式菜单组件 Popup menu在使用 Menu designer设计菜单时是完全相同的 只不过菜单是用鼠标的右键激活的。弹出式菜单在一定的 窗口范围内激活,所以必须将窗口和弹出式菜单联系起来。 在设计完 PopupMenu后,须在Name属性中为它命名,然后 把这个名称赋给窗体的 PopupMenu属性。 Popup menu组件 的常用属性列表如下: 1) Alignment:指定用户右击时 PopupmEnu组件出现 的位置,即弹出式菜单出现在鼠标指针的左侧、右侧还是 中央。该属性默认为 paLest,即菜单的左上角显示在指针 位置 ccccccMccccccccccc:cMMH
5.1.2 弹出式菜单TPopupMenu的设计 TPopupMenu 组件为右击组件时显示的弹出式菜单组件。 PopupMenu在使用Menu Designer设计菜单时是完全相同的。 只不过菜单是用鼠标的右键激活的。弹出式菜单在一定的 窗口范围内激活,所以必须将窗口和弹出式菜单联系起来。 在设计完PopupMenu后,须在Name属性中为它命名,然后 把这个名称赋给窗体的PopupMenu属性。PopupMenu 组件 的常用属性列表如下: (1)Alignment :指定用户右击时 TpopupMenu 组件出现 的位置,即弹出式菜单出现在鼠标指针的左侧、右侧还是 中央。该属性默认为 paLeft ,即菜单的左上角显示在指针 位置

(2) AutoPopup:为真(True)时,用户右击以此组件为弹出 式菜单的组件时,该组件自动弹出;否则应在程序中使用 Popup方法控制弹出式菜单的显示 (3) Help Contex:指定弹出式菜单的上下文ID,由于Help 系统中的每个界面都有一个惟一的上下文ID,所以使用该属 性可以建立弹出式菜单与帮助界面之间的关联。 (4) MenuAnimation:指定 Popup Menu菜单的显示方式。 (5) Popup ComPonent:最后一个使用该组件的组件。 (6) Popup point:指定弹出式菜单出现的位置,其值由 Popup 方法设置 7) Track Button:指定当弹出式菜单与工具栏按钮关联时 激活弹出式菜单的鼠标键 ccccccMccccccccccc:cMMH
(2)AutoPopup :为真(True)时,用户右击以此组件为弹出 式菜单的组件时,该组件自动弹出;否则应在程序中使用 Popup 方法控制弹出式菜单的显示。 (3)HelpContex :指定弹出式菜单的上下文 ID ,由于 Help 系统中的每个界面都有一个惟一的上下文 ID ,所以使用该属 性可以建立弹出式菜单与帮助界面之间的关联。 (4)MenuAnimation :指定 TpopupMenu 菜单的显示方式。 (5)PopupComPonent :最后一个使用该组件的组件。 (6)PopupPoint :指定弹出式菜单出现的位置,其值由 Popup 方法设置。 (7)TrackButton :指定当弹出式菜单与工具栏按钮关联时 激活弹出式菜单的鼠标键

51.3为菜单设定加速键和热键组成 设定加速键的方法为:只需在为菜单项的 Caption属性输入名称时,将 “&”放到需要指定为加速键的字母前面,该字母将被用下划线显示,运行 时,按“Alt加速键字母”可以激活该菜单条。为前面图5-2所示的例子设 置加速键,如图5-4所示。 设定热键的方法是:在对象加查器( Object Inspector)中,设置该菜单项 的 Shortcut属性。单击该属性值可弹出下拉菜单,为它选定一个热键组合即 可。在运行时,通过“Ctrl+热键字母”来激活菜单条。加速键和热键并不矛 盾,用户可以同时指定它们。再为图5-4所示的例子设置热键,如图5-5所 小 form1. lainenul 口区 文件编辑 新建Q)Ctr1+ 打开Q)Ctr1+0 保存)Ctr1+s 退出)Ctr1+X
5.1.3 为菜单设定加速键和热键组成 ➢设定加速键的方法为:只需在为菜单项的 Caption 属性输入名称时,将 “&”放到需要指定为加速键的字母前面,该字母将被用下划线显示,运行 时,按“Alt+加速键字母”可以激活该菜单条。为前面图5-2 所示的例子设 置加速键,如图5-4所示。 ➢设定热键的方法是:在对象加查器(Object Inspector)中,设置该菜单项 的ShortCut属性。单击该属性值可弹出下拉菜单,为它选定一个热键组合即 可。在运行时,通过“Ctrl+热键字母”来激活菜单条。加速键和热键并不矛 盾,用户可以同时指定它们。再为图 5-4 所示的例子设置热键,如图 5-5 所 示

514多级菜单和菜单位置的调整 创建多级菜单对于管理复杂的菜单命令结构非常有用。 Delphi的多级菜单风 格是下级菜单列在它上层菜单的边上,如图5-6所示。 创建多级菜单的方法是:把加亮条移到它的上层菜单条上,按Ctr1+右行键 将弹出子菜单,按照前面所述的方法进行创建多级子菜单。一般限制在三 级之内比较合适。 r Forn1.夏 ain lenu1 文件编辑 选择 按名称 按颜色 ccccccMccccccccccc:cMMH
5.1.4 多级菜单和菜单位置的调整 创建多级菜单对于管理复杂的菜单命令结构非常有用。Delphi的多级菜单风 格是下级菜单列在它上层菜单的边上,如图5-6所示。 创建多级菜单的方法是:把加亮条移到它的上层菜单条上,按Ctrl+右行键, 将弹出子菜单,按照前面所述的方法进行创建多级子菜单。一般限制在三 级之内比较合适

52菜单的属性设置和功能代码 通过菜单设计器( Menu designer)设计的菜单仅仅是一个程序界面, 还不具有任何功能,要想让菜单具有实际功能必须给相应的菜单项 连接功能代码。 为了给菜单项连接功能代码,可以双击菜单项,或在特定菜单项的 Events页上双击它响应的事件的值段, Delphi7将引导进入代码编 辑器,光标停在事件对应的事件处理过程中,此时就可以通过程序 来设置菜单项的属性或编写其它功能的代码。 ccccccMccccccccccc:cMMH
5.2 菜单的属性设置和功能代码 通过菜单设计器(Menu Designer)设计的菜单仅仅是一个程序界面, 还不具有任何功能,要想让菜单具有实际功能必须给相应的菜单项 连接功能代码。 为了给菜单项连接功能代码,可以双击菜单项,或在特定菜单项的 Events 页上双击它响应的事件的值段,Delphi 7 将引导进入代码编 辑器,光标停在事件对应的事件处理过程中,此时就可以通过程序 来设置菜单项的属性或编写其它功能的代码

521设置菜单项的有效和无效 在实际的应用程序中,由于各种原因需要对菜单项的有效和无效进行动态 设置。比如当前的系统剪贴板中没有数据可以粘贴,【粘贴】菜单项就应 该是变灰的禁用状态。 菜单项( Menuitem)的 Enabled属性表示该菜单项是否被禁用。当 Enabled属性为真(True)时,该菜单项可以响应事件,即可用状态;将 Enabled属性设置为假( False)时,则表示该菜单项当前不能响应事件, 颜色也变成灰色,即禁用状态。 ccccccMccccccccccc:cMMH
5.2.1 设置菜单项的有效和无效 在实际的应用程序中,由于各种原因需要对菜单项的有效和无效进行动态 设置。比如当前的系统剪贴板中没有数据可以粘贴,【粘贴】菜单项就应 该是变灰的禁用状态。 菜单项(MenuItem)的Enabled 属性表示该菜单项是否被禁用。当 Enabled 属性为真(True)时,该菜单项可以响应事件,即可用状态;将 Enabled 属性设置为假(False)时,则表示该菜单项当前不能响应事件, 颜色也变成灰色,即禁用状态

522菜单项的复选标记 所谓复选标记,是指当用户选中某菜单项时,系统会在菜单 项前面设置标记。比如 Windows98窗口中【查看】菜单下的 有关工具栏各菜单项,其中已显示的工具栏菜单项前面有勾 号,而还没有调出的工具栏所对应的菜单项前面就没有勾号 下面我们设计任意一个菜单项,使其能通过改变 Checked属 性来控制是否显示状态栏。设置该菜单项的Name属性为 Menubar, Caption属性为“工具栏”,并添加一个状态栏组 件,其Name属性为 StatusBar1。完成这样的功能代码如下: ccccccMccccccccccc:cMMH
5.2.2 菜单项的复选标记 所谓复选标记,是指当用户选中某菜单项时,系统会在菜单 项前面设置标记。比如 Windows 98 窗口中【查看】菜单下的 有关工具栏各菜单项,其中已显示的工具栏菜单项前面有勾 号,而还没有调出的工具栏所对应的菜单项前面就没有勾号。 下面我们设计任意一个菜单项,使其能通过改变 Checked 属 性来控制是否显示状态栏。设置该菜单项的 Name 属性为 MenuBar ,Caption 属性为“工具栏” ,并添加一个状态栏组 件,其 Name 属性为 StatusBar1 。完成这样的功能代码如下:
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
- 《Delphi7程序设计》第4章 对话框和多窗体设计.ppt
- 《Delphi7程序设计》第3章 可视化组件的应用.ppt
- 《Delphi7程序设计》第2章 00P Pascal基础知识.ppt
- 《Delphi7程序设计》第1章 Delphi概述.ppt
- 《Delphi7程序设计》第10章 数据交换技术.ppt
- 《SQL Server 2000数据库应用技术》教学资源(PPT课件讲稿)第1章 SQL Server关系数据库简介.ppt
- 《计算机文化基础》课程教学资源(PPT课件讲稿)第四章 中文 Windows98.ppt
- 《计算机文化基础》课程教学资源(PPT课件讲稿)第六章 WORD2000入门.ppt
- 《计算机文化基础》课程教学资源(PPT课件讲稿)第八章 PowerPoint演示文稿.ppt
- 《计算机文化基础》课程教学资源(PPT课件讲稿)第五章 计算机网络基础及 Internet.ppt
- 《计算机文化基础》课程教学资源(PPT课件讲稿)第二章 微型计算机系统.ppt
- 《计算机文化基础》课程教学资源(PPT课件讲稿)第三章 DOS操作系统.ppt
- 《计算机文化基础》课程教学资源(PPT课件讲稿)第七章 EXel2000入门.ppt
- 《计算机文化基础》课程教学资源(PPT课件讲稿)第一章 计算机文化导论.ppt
- 北京邮电大学:《多媒体技术原理及应用》第9章 多媒体通信.ppt
- 北京邮电大学:《多媒体技术原理及应用》第7章 超文本和Web技术.ppt
- 北京邮电大学:《多媒体技术原理及应用》第6章 多媒体数据库及基于内容检索.ppt
- 北京邮电大学:《多媒体技术原理及应用》第5章 多媒体节目开发工具.ppt
- 北京邮电大学:《多媒体技术原理及应用》第4章 多媒体数据制作.ppt
- 北京邮电大学:《多媒体技术原理及应用》第3章 多媒体计算机系统组成.ppt
- 《Delphi7程序设计》第6章 Delphi中类的应用.ppt
- 《Delphi7程序设计》第7章 数据库编程基础.ppt
- 《Delphi7程序设计》第八章 DELPHI77数据库应用程序实例.ppt
- 《Delphi7程序设计》第9章 多层分布式应用系统.ppt
- 《3DS MAX应用制作》第一讲 大厅效果图的制作.ppt
- 《3DS MAX应用制作》第二讲 客厅空间的制作.ppt
- 《单片机原理及应用》课程教学资源(PPT教学课件)第一章 微型计算机基础知识.ppt
- 《单片机原理及应用》课程教学资源(PPT教学课件)第三章 MCS-51单片机指令系统.ppt
- 《单片机原理及应用》课程教学资源(PPT教学课件)第四章 汇编语言程序设计.ppt
- 《单片机原理及应用》课程教学资源(PPT教学课件)第二章 MCS-51系列单片机芯片结构.ppt
- 《单片机原理及应用》课程教学资源(PPT教学课件)第六章 单片机的中断与定时系统.ppt
- 《单片机原理及应用》课程教学资源(PPT教学课件)第五章 单片机存储器扩展技术.ppt
- 《单片机原理及应用》课程教学资源(PPT教学课件)第七章 单片机I/0口扩展及应用.ppt
- 《单片机原理及应用》课程教学资源(PPT教学课件)第十一章 单片机应用系统设计.ppt
- 《单片机原理及应用》课程教学资源(PPT教学课件)第八章 单片机串行数据通信.ppt
- 《单片机原理及应用》课程教学资源(PPT教学课件)第九章 A/D和D/A转换器接口.ppt
- 《单片机原理及应用》课程教学资源(PPT教学课件)第十章 AT89C2051 Flash单片机.ppt
- 浙江大学:《单片机原理与接口》第八章 80C51单片微机的系统扩展原理及接口技术.ppt
- 浙江大学:《单片机原理与接口》第九章 80c51单片微机的应用系统实例.ppt
- 浙江大学:《单片机原理与接口》第六章 单片微机定时器.ppt