首页 > 网站 > 媒体动画 > 正文

Authorware开发实例:第28例 在线帮助系统--Authorware7ShowMe范例精选

2024-09-08 19:26:06
字体:
来源:转载
供稿:网友

28.1  程序功能与运行

打开程序,屏幕上显示如图28-1所示的程序流程图和如图28-2所示的程序运行主画面。

             

          图28-1  程序流程图                         图28-2  程序运行主画面

在图28-1中,run to view documentation设计图标完成发布一个声明并运行程序到主画面的功能,其余设计图标则完成运行程序实例的功能。

在如图28-2所示的主画面中有如下3个按钮:

l         introduction】——程序简介

l         a help system】——程序流程图标设计说明

l         run the example】——运行实例

单击run the example按钮,程序进入实例演示分支,其运行画面如图28-3所示。

画面上显示一个activate help按钮,单击此按钮,画面左侧显示出3行帮助系统目录,右侧显示出3个按钮,如图28-4所示。

鼠标移至目录上变为手形,单击某行目录,画面显示出与本目录相关的内容。单击help topics按钮,恢复如图28-4所示画面。

单击find按钮,弹出查找对话框,输入欲查找的关键字。再单击find按钮,查找到的相关页标题显示在查找对话框中。单击选中某页,单击go to page按钮进入该页,画面显示该页内容。所查关键字以高亮显示。

单击close help按钮,关闭帮助系统画面,返回如图28-3所示的画面。

  

图28-3  实例运行画面                       图28-4  进入帮助系统画面

28.2  程序流程分析

28.2.1  框架页图标的建立

打开activate help群组图标,其下级流程如图28-5所示。

图28-5  activate help下级流程图

help topics框架图标下设置下4个设计图标,构成了本框架内的4页。其中首页为help topic menu群组图标,其他3页均为显示图标。3个显示图标中分别输入了与帮助目录相关的内容。

28.2.2  帮助系统目录表的创建与应用

本帮助系统的设计思路是将帮助的题目设置成一个列表并显示于屏幕上,用户单击目录中的某一行便跳转到相关页面中去。这一功能是在框架图标的首页help topic menu群组图标中完成的。该群组的下级流程图如图28-6所示。

图28-6  首页的下级流程图

1. 创建帮助系统目录表

build topic list运算图标中的代码创建了帮助系统目录表,其代码如图28-7所示。

图28-7  build topic list创建目录表代码

及时点评  用repeat with语句创建了helptopiclist列表变量,且列表中的3个元素名称就是“help topics”框架图标中的第2页、第3页和第4页的标题。这是一个设计技巧,并且由于每个元素中加入了“return”符,因此,helptopiclist列表变量显示出来时菹蛳允荆疵扛鲈兀刻醢镏柯迹└髡家恍小?/span>

2. 设置目录表为热物体

如图28-6所示的流程图中设计了一个select topic交互响应图标,其下仅含一个热物体交互响应分支。由如图28-8所示的热物体交互响应属性设置对话框可知,帮助系统目录表被设置成为热物体。因此,用户单击目录表,响应匹配,进入本分支。

图28-8  jump to help topic热物体交互属性设置


3. 根据用户单击目录跳转到相应页

分支下的导航图标有一个附属运处图标,其中代码为:

helptopic:=getline(helptopiclist, lineclicked)

helptopic变量中将保存用户单击的目录表某一行的字符,也就是说,helptopic变量中保存了“hint for using find”、“how to add a topic”和“topic3”这3个标题中的某一个。

jump to help topic导航图标属性设置对话框如图28-9所示。

图28-9  jump to help topic导航图标属性设置对话框

由图28-9可知,该导航图标导航走向为计算方式,计算表达式中应用了eval系统函数,该函数的功能是计算其后面表达式的值。

由于helptopic变量中保存了目录表中的一行目录,而目录名称与框架图标中第24页的设计图标名称一致,因此eval计算表达式的结果将是框架图标中某页的id码,因此,导航图标根据计算结果跳转到框架的某页中。

及时点评  本例帮助系统的建立与运行经过了如下几个步骤:

(1)将框架中第2~4页的设计图标名称作为帮助目录表的元素项。

(2)在图标中嵌入目录表变量使帮助目录显示于画面上。

(3)设置目录表为热物体,单击它可产生交互响应。

(4)应用getline函数取得用户单击目录表中的具体目录。

(5)通过导航图标跳转到目录相关页面。

28.2.3  框架输入层的设计

框架图标本身由输入和输出层组成。并且程序进入框架时首先执行输入层的流程,然后自动进入首页。help topics框架的输入和输出层流程如图28-10所示。

 

图28-10  help topics框架输入层流程

设框架输入层是由一个交互响应图标和3个导航图标组成的按钮响应分支构成。其中,find导航分支属性设置对话框如图28-11所示。

     图28-11  find导航分支属性设置对话框

由图28-11可知,本分支在当前框架中寻找与某关键词相匹配的页并跳转到该页中去。

close help导航分支属性设置如图28-12所示。

图28-12  close help导航分支属性设置对话框

由图28-12可知,本分支将退出框架,关闭帮助系统画面,程序返回主流程activate help交互响应入口处。

help topics导航分支属性设置对话框如图28-13所示。

图28-13  help topics导航分支属性设置对话框

由图28-13可知,本分支使程序跳转到框架第1页,即再次进入帮助系统目录页,等待用户再一次选择目录。

及时点评  框架输入层的3个按钮设计,实现了框架内查找浏览的管理,并且通过导航图标的跳转设置,完成再次进入目录页和退出框架的功能。

findclose helphelp topics3个按钮均设置为进入框架后永久有效,且分支跳转都是“return”, 即返回调用处。

及时点评  按钮“永久有效”的设置使得3个按钮在程序进入框架运行的整个期间都是有效存在的,因此用户可随时单击它们而进入各自分支执行。并且3个分支跳转均为return的设置,保证了程序在执行完本分支后返回调用处继续程序。

28.2.4  导航跳转的设计

本程序设计了两类导航跳转:一是框架输入层中的导航跳转;二是框架输入层外的导航跳转。

框架输入层中共设置了3个导航图标,它们分别完成在本框架内“查找与某关键词相匹配的页”并跳转到该页、跳转到首页以及退出框架的功能。而如图28-6所示,jump to help topic导航图标是框架输入层以外的导航图标。用户单击帮助目录热物体后进入该导航图标执行导航跳转。

该导航图标的属性设置如图28-9所示。

由设置可知,jump to help topic导航走向为计算式,其计算表达式如下:

eval("iconid/""helptopic"/"")

该表达式的运算结果是获得字符串变量helptopic 中存储的内容所代表的设计图标的id标识。由于helptopic 变量中保存的是帮助目录中的一行,而帮助目录表又与框架第24页设计图标名称一致,因此,导航图标将跳转到框架中第24页的某一页。

及时点评  在流程线的任何位置均可放一个导航图标,并且通过设置使程序从此处跳转到需要的页中去。但程序中必须存在有框架页结构,因为导航跳转是针对页图标而不是其他任何图标。

灵活设置框架与导航的配合,可实现程序的复杂跳转。

28.3  小结

本实例通过框架页管理设计,实现了一个简单的在线帮助系统的功能。即用户通过单击帮助目录,使程序跳转到相关页面浏览。

本例中主要应用了如下技术:

l         框架页结构设计

l         框架输入层流程设计

l         帮助目录表的创建

l         设置目录表为热物体的设计

l         取得单击目录表中某一行的设计

l         导航图标跳转到表达式链接的页的设计

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表