第05章菜单设计、按钮、标签页、工具栏共24页文档

合集下载
相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
(3) 设置窗体使用主菜单和弹出菜单,设置方法是: 将对象观察器上窗体的MainMenu和PopMenu属 性值分别设置为MainMenu1和PopMenu1
(1)添加菜单项方法:
双击菜单组件,或者是在菜单组件的对象观察器中,单击 Items属性输入框中的”对话框”按钮。
双击
单击
打Hale Waihona Puke Baidu菜单设计器
(2)添加菜单图标:
(1) 通过菜单项的Bitmap属性设置图标
点击此处 加载图标
选择 路径
选择
图标
确认
加载菜单图标对话框
选择图标对话框
在这种方式中,首先选择要设置图标的菜单项,在其对象观察器中 找到Bitmap属性,单击“对话框”按钮,单击”load”,在此对话框 中选择一幅位图,点击“打开”,完成图标的设置工作.
Remove过程
删除指定的菜单项,与Delete过程不同的是,它使 用菜单项对象名作为参数,使用格式如下:
菜单组件名.Remove(Item);
(7)设置加速键和快捷键
(8) 弹出菜单

在激活方式上,主菜单是在显示窗体时自动激
活的,弹出菜单则必须是在设置PopupMenu属性的
组件上通过单击鼠标右键来激活。
第五章 菜单设计
本章内容:
菜单的种类 菜单设计 常用工具栏设计
5.1 菜单设计的一般原则
好的菜单设计应该具有功能强大、条 理清晰、易于使用等特点:
菜单设计的第一个基本原则是应用软 件的主控模块最好不超过9个
菜单设计的另一个基本原则是“符合 习惯、突出重点、尽量精简”。
下图即反映了菜单设计的一些基本原 则:
菜单项前必须首先定义它,然后再将定义好的菜
单项添加到主菜单中。下面先定义菜单项,方法
为:菜单项名:TMenuItem。
(5) (4)设置每个主菜单的子菜项 (6) 动态添加子菜单项的方法与添加主菜单项的方
法相似,仍然是先定义子菜单项,再实例化,然 后设置子菜单名,最后将子菜单项添加到相应的 主菜单项中
Click过程
模拟鼠标单击某个菜单项,从而产生OnClick事件,使 用格式为:菜单项对象名.Click。
Delete过程
从菜单组件中删除由索引号index指定的菜单项, 使用格式为:菜单组件名.Delete (index);
Indexof 函数
返回菜单项中的索引号,索引号从0开始,如果指 定的菜单项没有出现在菜单中,则返回-1,使用格 式为:菜单组件名.Indexof(Item),其中Item是菜 单项对象名。
Public中定义的它,定义格式如下:主菜单对象名: TMainMenu;例如:定义一个名叫MyMainMenu的主 菜单对象,格式为:MyMainMenu:TMainMenu; (2) 实例化主菜单对象
实例化主菜单对象用于为已定义的主菜单对象分
配内存,方法如下: 菜单对象名:=TMainMenu.Create(Self);例如,实例化
2.1 创建动态菜单
(5)设置菜单项的响应事件
设置菜单的响应事件与是否为主菜单或子菜单无关, 菜单项实例化后就可设应事件,设置方法如下:
菜单项名.OnClick:=菜单响应处理过程;
(6)动态修改菜单
动态修改菜单项包括添加、删除等操作。 在前面的例子中,我们已经使用了菜单项对 象的Add过程添加菜单项,其实菜单项对象还 有Insert、Delete等方法,使用这些方法可 完成菜单项的动态插入或删除操作。下面简 要说明一下它们的使用方法。
3. 多页标签菜单
Delphi可用于设计菜单的多页标签组件主要 有TabbedNotebook, Pagecontrol两种.
1. 下拉菜单设计
(1) 单击“File” →”new”→“Application”,建立
新主项菜目单
弹出 菜单
(2) 在新窗体上分别放入MainMenu和PopMenu
(3) 编辑菜单项,菜单的加速键和快捷键 (4)菜单对象的命名,设置菜单项的相应事件 (5)建立二级菜单
二级 菜单
方法:选中需要创建二级菜单的菜单项;单击鼠标右键,在弹出 菜单中选择“Creates SubMenu ”菜单项,即生成二级菜单。
2. 动态菜单设计
2.1 创建动态菜单
(1) 定义主菜单对象 由于主菜单应用于整个窗体,因此应在窗体类的
插入子菜单项
主菜单名.Items[MIndex].Insert(SIndex: Integer; SItem: TMenuItem);
此格式的功能是:在第MIndex个主菜单项的第Sindex 个子菜单项前插入一个由SItem指定的子菜单项。注意, 插入前,要插入的菜单项、主菜单和相应的子菜单都要 实例化。请读者根据上面的例子改写一个动态插入菜单 的例子。
Insert过程
插入主菜单项
格式:主菜单名.Items.Insert(Index: Integer; Item: TMenuItem);
上述格式的功能是:在主菜单的第Index个菜单项前插 入一个由Item指定的主菜单项,注意,插入前主菜单必 须实例化并至少有Index+1个主菜单项,同时Item菜单 项也要实例化。
分类
隐藏图 标
如图所示,MS OFFICE2000 主菜单有9项,并将不常用的子 菜单隐藏,增强了菜单的可读性。
5.2 菜单的种类
菜单一般分为三大类:
1. 下拉菜单
1. 下拉菜单一种是主菜单(Mainmenu),一种 是弹出菜单(PopMenu).
2. 按钮菜单
Delphi可用于设计菜单的按钮组件主要有 Button ,BitBtn ,SpeedButton三种.
当弹出菜单的AutoPopup属性设置为False时,只能 通过调用弹出菜单的Popup方法才能激活它,Popup 方法的使用格式如下:
弹出菜名.Popup(X, Y);
MyMainMenu的主菜单对象,格式如下: MyMainMenu:=TMainMenu.Create(Self);注意:实 例化主菜单对象及下面三步中的程序代码应放在窗体 的创建事件中,即窗体的OnCreate事件中。
2.1 创建动态菜单
(3) 设置主菜单项
(4)
设置主菜单项其实是添加菜单项,在添加
相关文档
最新文档