1 / 21

第 8 章 菜单与工具栏

第 8 章 菜单与工具栏. 【 教学内容 】 • 设计菜单 • 利用“菜单设计器”创建菜单系统 • 创建快捷菜单 • 向菜单添加事件代码 • 创建 SDI 菜单和实例 • 设计工具栏. 【 教学要求 】 • 了解: 菜单的概念 • 理解: 菜单系统的规划原则; 定义工具栏类的方法。 • 掌握: 利用“菜单设计器”创建菜单系统; 向菜单添加事件代码;

lazar
Download Presentation

第 8 章 菜单与工具栏

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 第 8 章菜单与工具栏

  2. 【教学内容】 •设计菜单 • 利用“菜单设计器”创建菜单系统 • 创建快捷菜单 • 向菜单添加事件代码 • 创建SDI菜单和实例 • 设计工具栏

  3. 【教学要求】 • 了解:菜单的概念 • 理解:菜单系统的规划原则; 定义工具栏类的方法。 • 掌握:利用“菜单设计器”创建菜单系统; 向菜单添加事件代码; 创建快捷菜单; 创建SDI菜单和实例; 定制工具栏。

  4. 菜单和工具栏为用户提供了一个形式与结构更好的操作界面,更加方便用户选择执行应用程序的功能或使用应用程序的命令。菜单和工具栏是一个完整的数据库应用程序中的两个必要的组件。 菜单是用户在应用数据库应用程序中最先接触的所有功能的接口,菜单系统的质量不仅反映应用程序的功能模块的组织水平,同时也反映应用程序的界面友善性。工具栏是向用户提供常用功能的快捷方式,是设计实用性较强的应用程序的必要手段。

  5. 8.1 设计菜单 创建菜单系统一般都需要以下步骤: (1)规划和设计系统。确定需要有哪些菜单项,菜单要出现在界面的何处以及哪些菜单有子菜单等。 (2)创建主菜单和子菜单。建立主菜单和子菜单,使用菜单设计器定义菜单标题、菜单项和子菜单。 (3)按实际要求为菜单系统指定任务 (4)生成菜单程序。利用菜单设计器制作的菜单,将生成一个以.mnx为扩展名的菜单文件,并可以将此菜单文件生成一个.mpr为扩展名的程序文件。 (5)运行菜单程序,以测试菜单系统。通过运行菜单文件,可以检测菜单系统设计是否符合一般软件的菜单系统的设计原则,检查运行情况是否符合当前应用程序用户的特殊服务要求。然后对菜单设计进行必要修改。 。

  6. 8.1 设计菜单 8.1.1 菜单系统的规划原则 设计菜单系统时,要遵循下列原则: (1) 按照用户所要执行的任务组织系统,而不要按应用程序的层次组织系统 。 (2)给每个菜单一个有意义的菜单标题。 (3)按照估计的菜单项使用频率、逻辑顺序或字母顺序组织菜单项。 (4)若某组菜单的命令较多,可以考虑在菜单项的逻辑组之间放置分隔线。 (5)将菜单上菜单项的数目限制在一个屏幕之内。 (6)尽可能地为菜单和菜单项设置快捷键或访问键。 (7)为菜单项指定任务,适当创建子菜单,不宜太多或太少。 (8)描述菜单项时,要使用日常用语而不要使用计算机术语。 (9)说明选择一个菜单项产生的效果时,应使用简单、生动的动词。 (10)有些菜单组暂时不便定义,也要规划好它的位置,并在系统分析过程中记录下来,以备随后地检查。 (11)在帮助内容中为菜单中的命令设计相应的功能与操作的说明文本。 (12)在菜单项中混合使用大小写字母。

  7. 8.1 设计菜单 8.1.2 利用“菜单设计器”创建菜单系统 当一个菜单规划完成后,就可以利用“菜单设计器”创建一个菜单。 “菜单设计器”的主要功能可以描述如下: •为应用程序建立下拉式菜单。 •通过定制Visual FoxPro 8.0系统菜单,建立下拉式菜单。 •通过下拉式菜单的树形结构完成对若干模块应用程序的调用。 •利用其他应用程序、表或表达式实现对菜单项有效性的设置。 •利用其他应用程序设计快速菜单。 打开“菜单设计器”创建菜单的常用方法有以下几种: •选择“文件”菜单中的“新建”命令,打开“新建”窗口,选择“菜单”项,单击“新建”按钮,弹出“新建菜单”对话框… •从常用工具栏上单击“新建”按钮,选择“菜单”项,弹出“新建菜单”对话框… •在“项目管理器”中的“其他”选项卡中,选择“菜单”,单击 “新建”按钮… • 采用命令格式:在“命令”窗口中,CREATE MENU [<文件名>],其中的<文件名>指菜单文件,扩展名是.mnx,允许缺省。

  8. 8.1 设计菜单 1. 创建菜单 (1)在“项目管理器”的“其他”选项卡中,选择“菜单” 项,单击 “新建”按钮,弹出 “新建菜单”对话框。这时可以选择要创建的两种菜单形式,一种是下拉式菜单,一种是快捷菜单。 (2)单击“菜单”按钮,弹出“菜单设计器”窗口, (3)在“菜单设计器”窗口中的“菜单名称”栏中输入菜单的名称,并在“结果”中选择菜单项的类型,调整菜单栏的位置,一级菜单设计完成, 2. 创建菜单项(子菜单) 每一个菜单项都表示用户希望执行的Visual FoxPro 8.0命令或过程,菜单项也可以包含用于提供其他菜单项的子菜单。 (1)在“菜单名称”栏选择要添加菜单项的菜单。 (2)在“结果”框中选择“子菜单”,此时其有侧会出现“创建”按钮。如果已经存在子菜单,则会出现“编辑”按钮。 (3)单击“创建”按钮或“编辑”按钮。进入“菜单设计器”窗口的下一屏幕。 (4)在“菜单名称”栏中,输入新建的各菜单项名称,并按屏幕上的各个选项对子菜单进行编辑。

  9. 8.1 设计菜单 3. 菜单项分组 为了增强各菜单项的逻辑性,提高菜单项的可读性 ,可以利用分隔线将内容相关的菜单项分组。 (1)选择要插入分隔线的菜单项,单击“插入”按钮。 (2)出现“新菜单项”栏,将该栏名称输入“\-”,即可创建一条分隔线。 (3)也可以先建成“\-”栏,拖动其左侧的双箭头按钮,将分隔线拖动到适当位置。 4. 为菜单项指定访问键 功能比较完备的菜单,一般要为菜单设计访问键,从而可以通过键盘快速的访问菜单。在菜单标题或菜单项截面上,访问键用带有下划线的字母表示。 5 .为菜单项指定快捷键 使用快捷键是让用户在按下某个键的同时,再按另一个键而选择菜单或菜单项。在图8.4所示的“按下要定义的键”,可以用来设置菜单项的快捷键

  10. 8.1 设计菜单 6. 启用和禁用菜单项 菜单的启用或禁止是根据所给条件计算得到,当条件为.T.时即将菜单或菜单项变为无效。如不设置条件,系统默认为.F.,即启用。如果菜单禁止,那么菜单中的所有菜单项均无效,设置步骤如下: (1)在“菜单名称”栏中,选择相应的菜单或菜单项。 (2)单击“选项”按钮,弹出“提示选项”对话框。 (3)在“跳过”栏中或利用“表达式生成器”输入逻辑表达式,即可完成菜单项的启用和禁用设置。 7. 为菜单或菜单项指定任务 (1)使用命令完成任务 菜单或菜单项要执行的命令,可以是任何一个Visual FoxPro 8.0命令 (2)使用表单完成任务 在菜单或菜单项上,使用命令或过程可以显示编译过的表单或对话框。例如,在“系统维护”子菜单中,调用“mmxg.scx”表单就是利用命令实现的。运行菜单就可以调用密码修改的表单,实现本系统的密码修改。 (3)调用报表完成任务 利用报表为菜单指定任务,实际上也是通过命令来实现。

  11. 8.1 设计菜单 8. 定义菜单标题的位置 在应用程序中,可以预先设置用户自定义菜单标题的位置,其具体操作步骤如下: (1)打开菜单文件“菜单设计器”对话框。 (2)选择菜单“显示”中的“常规选项”命令,参看图8.16所示。 (3)在弹出的“常规选项”对话框中,选择适当的“位置”选项,即“替换”、“追加”、“在…之前”或“在…之后”。单击“确定”按钮保存。 (4)对菜单进行“生成”操作后,Visual FoxPro 8.0会重新排列菜单标题的位置。 9. 生成菜单程序 要执行菜单文件,必须先生成菜单程序文件(.MPR),要生成菜单程序文件(.MPR),主要有下列两种方式: •选择菜单“菜单”中的“生成”命令,在“生成菜单”对话框中单击“生成”按钮即可。 •在“项目管理器”中,选择菜单文件,单击“运行”按钮或“连编”按钮,系统将自动生成菜单程序文件

  12. 8.1 设计菜单 8.1.3创建快速菜单 利用“快速菜单”功能创建菜单系统的步骤如下: (1)在“项目管理器”的“其他”选项卡中,选择“菜单”项,单击“新建”按钮。 (2)在弹出的“新建菜单”对话框中单击“菜单”按钮,此时出现“菜单设计器” ,并且在菜单栏中出现“菜单”项。 (3)单击菜单“菜单”中的“快速菜单”命令,“菜单设计器”中便包含了 Visual FoxPro 8.0主菜单的信息。 (4)通过添加或更改菜单项定制菜单系统后,保存即可。 8.1.4创建快捷菜单 1. 快捷菜单的创建过程 创建快捷菜单的具体操作步骤如下: (1)在“项目管理器”的“其他”选项卡中,选择“菜单”项,单击“新建”按钮。 (2)在弹出的“新建菜单”对话框中单击“快捷菜单”按钮,此时出现“快捷菜单设计器”,并且在菜单栏中出现“菜单”。 (3)添加菜单项的过程与创建菜单完全相同。 (4)单击菜单“菜单”中的“生成”命令,将所创建的快捷菜单进行生成和保存

  13. 8.1 设计菜单 2. 将快捷菜单附加到控件中 具体步骤如下: (1)选择要附加快捷菜单的控件。 (2)在“属性”窗口的“方法程序”选项卡中双击RightClick Event属性,打开控件的代码窗口。或者直接双击控件进入代码窗口,选择“过程”RightClick。 (3)在代码窗口中添加快捷菜单程序命令:DO <菜单文件名.mpr> 注意: 引用快捷菜单时,必须调用扩展名为.mpr的菜单程序文件。8.1.5 向菜单添加事件代码 1. 向菜单添加清理代码 为了让菜单停留在屏幕上等待用户选择,可以在“清理”代码窗口中加入代码READ EVENTS,其具体步骤如下: (1)打开“菜单设计器”对话框,选择菜单“显示”中的“常规选项”命令,弹出 “常规选项”对话框。 (2)在“菜单代码”区域选择“清理”复选框,系统自动打开“清理”代码窗口。 (3)在“常规选项”对话框中单击“确定”按钮,激活Visual FoxPro 8.0的“清理”代码窗口,输入正确的清理代码。 (4)按Ctrl+w存盘退出,关闭“清理”代码窗口。

  14. 8.1 设计菜单 2. 设置初始化代码 初始化代码时在定义菜单系统之前执行的一些准备性设置程序,一般包含用于打开文件、声明变量或者将菜单系统保存到堆栈中以备恢复使用的代码。向菜单系统添加初始化代码的步骤如下: (1)打开“菜单设计器”对话框,选择菜单“显示”中的“常规选项”命令,弹出 “常规选项”对话框。 (2)在“菜单代码”区域选择“设置”复选框,系统自动打开“设置”代码窗口。 (3)在“常规选项”对话框中单击“确定”按钮,激活Visual FoxPro 8.0的“设置”代码窗口,输入正确的初始化代码。 (4)按Ctrl+W存盘退出,关闭“设置”代码窗口。返回“菜单设计器”对话框,保存菜单文件时,Visual FoxPro8.0 同时保存初始化代码。

  15. 8.2 创建SDI菜单和实例 1. 创建SDI菜单 用“菜单设计器”生成的菜单,运行后只能在Visual FoxPro 8.0系统的主窗口中显示,而不是显示为窗口的顶层。如果要将Visual FoxPro 8.0主窗口的主窗口隐藏,自行建立应用程序的主表单,就必须使用SDI菜单完成。 SDI菜单是在SDI(Single Document Interface,单文档界面)窗口中的菜单。如果要创建SDI菜单,必须在设计菜单时指出用于SDI表单。其基本步骤如下: (1)打开要建成SDI菜单的菜单文件“菜单设计器”对话框。 (2)选择菜单“显示”中的“常规选项”命令。 (3)在弹出的“常规选项”对话框中,选中“顶层表单”复选框。 (4)单击“确定”按钮。该菜单即可建成SDI菜单。 2. 在顶层表单中调用SDI菜单 顶层表单是无父表单的独立的无模式表单,用于创建一个SDI(Single Document Interface,单文档界面)应用程序,或者作为其他子表单的父表单。

  16. 8.2 创建SDI菜单和实例 利用顶层表单调用SDI菜单,设计SDI应用程序的步骤如下: (1)打开用来装载SDI菜单的表单文件的“窗体设计器”窗口。 (2)在该表单的“属性”窗口中,选择“布局”选项卡,将SHOWWINDOW 属性的值设为“2-作为顶层表单”。 (3)打开该表单的代码窗口,选择Init事件,然后在窗口中输入如下命令: DO SDI菜单名.mpr WITH THIS, .T. (4)关闭代码窗口,保存表单文件,顶层表单建成。 3. 设计一个使用SDI菜单的实例 示例:建立一个名称为“毕业生管理信息系统”的顶层表单,将菜单装载到表单中。 创建了SDI菜单系统及相关表单以后,可将其包含在应用程序中,并由“项目管理器”建立应用程序。

  17. 8.3 设计工具栏 8.3.1 定制VisualFoxPro8.0工具栏 1. 定制工具栏 定制VisualFoxPro8.0工具栏的步骤如下: (1)在“显示”菜单中选择“工具栏”,则弹出“工具栏”对话框 (2)选择要定制的工具栏,然后单击“定制”按钮,系统将显示要定制的工具栏和“定制工具栏”对话框。 (3)在“定制工具栏”对话框的“分类”列表框中,选择按钮所属类别,在“按钮”栏中则显示该分类的按钮。然后可以选择合适按钮,并拖到要定制的工具栏中。 (4)在被定制的工具栏中选择按钮,并将按钮拖走。单击“定制工具栏”对话框的“关闭”按钮,即可完成工具栏的定制。 注意: 如果修改了 Visual FoxPro 8.0某个工具栏,可以在“工具栏”对话框中选择该工具栏,单击“重置”按钮,即可将工具栏还原为原始配置。

  18. 8.3 设计工具栏 2. 创建新工具栏 利用其他工具栏按钮创建新工具栏,操作步骤如下: (1)在“显示”菜单中选择“工具栏”,则弹出“工具栏”对话框。然后单击“新建”按钮,弹出“新建工具栏” 对话框。 (2)在“新建工具栏” 对话框中输入名称“新工具栏”,单击“确定”按钮,弹出“定制工具栏”对话框,选择一个分类,然后把需要的工具栏按钮拖到“新工具栏”中。 (3)如果需要,可以通过拖动,重排新工具栏按钮。单击“定制工具栏”对话框的“关闭”按钮,即可完成新工具栏的创建。 3. 删除创建的工具栏 VisualFoxPro8.0 提供的工具栏是不能删除的,但可以删除新建的工具栏。删除新建的工具栏的步骤如下: (1)在“显示”菜单中选择“工具栏”,则弹出“工具栏”对话框。 (2)选择要删除的一个新工具栏,单击“删除”按钮,出现一个提示对话框。 (3)在提示对话框中单击“是”按钮,即可删除该新工具栏。 (4)返回“工具栏”对话框后,单击“确定”按钮。

  19. 8.3 设计工具栏 8.3.2 定义工具栏类的方法 VisualFoxPro8.0提供了一个工具栏基类,在此基础上可以创建所需的类。定义了工具栏类以后,可向工具栏类添加对象,并为自定义工具栏定义属性、事件和方法程序,最后可将工具栏添加到表单集中。 1. 定义工具栏类 Visual FoxPro 8.0提供了一个工具栏基类,在此基础上,可以创建所需的类。定义一个自定义工具栏类的操作步骤如下: (1)在“项目管理器”中选择“类”选项卡,单击“新建”按钮,出现“新建类”对话框。 (2)在“新建类”对话框中的“类名”文本框中输入类名称“用户工具”,在“派生于”列表框中选择Toolbar,在“存储于”框中输入类库名。 (3)单击“确定”按钮,出现“类设计器” 对话框。然后,向自定义工具栏类中添加对象。 (4)通过属性窗口修改其提示信息,通过“布局”工具栏调整它们的大小尺寸,最后通过“属性”窗口为控件对象设置属性,并在代码窗口中输入代码等。 (5)单击“关闭”按钮保存工具栏类。

  20. 8.3 设计工具栏 2. 使用自定义工具栏类 要使用自定义工具栏类,首先需要用“窗体设计器”将工具栏与表单对应起来。可以按如下操作步骤进行: (1)首先注册并选定包含工具栏类的类库。 (2)在表单集上添加工具栏。 (3)在“窗体控件”工具栏中单击“查看类”按钮,从列表中选择该工具栏类库。在“窗体控件”工具栏中选择工具栏类如“用户工具”,单击当前控件的任意位置。在弹出的提示框中单击“是”按钮,建立一个表单集。 (4)在“窗体设计器”中将工具栏拖动到适当的位置。 (5)为工具栏按钮定义操作。依次类推,也为其他工具栏按钮定义操作,然后保存表单。 3.使用户自定义工具栏与菜单协调 在应用程序中同时使用工具栏和菜单,应用程序中的某些菜单项与工具栏功能相同。协调菜单和用户自定义工具栏按钮时,可以按照如下步骤: ① 通过创建工具栏类来创建工具栏,添加命令按钮,并将代码包含到对应Click 事件的方法程序中。 ② 创建与之协调的菜单。 ③ 添加协调的工具栏和菜单到一个表单集中。

  21. the end

More Related