用户可以应用多种方式通过内部应用程序调用在线帮助,例如,当一个用户从帮助菜单中选择一项,或在应用程序GUI中点击帮助按钮,JavaHelp系统提供一个简便的界面,通过这个界面,应用程序要求话题的ID 得以显示。然后JavaHelp系统将话题ID与相应的URL相连接并将其显示出来。
ID被映射到一个被称作映射文件的JavaHelp系统元数据文件中的URL上。例如,当为文件选择对话框编码时,开发人员要求话题ID fc_help在当对话框底部的帮助按钮被点击时显示。在映射文件中,ID fc_help被定义为名为 FileChooser.html的文件,使用以下XML句法: <mapID target="fc_help" url="html/help/FileChooser.html" />
将文件名(或URL)的规范从程序代码分离为内容的作者提供了控制与话题ID相关的信息的自由。
工具提示是一个显示给用户的简短信息,当光标停留在一个按钮上的时间间隔长于阈值时它就会出现。您还可以将工具提示信息纳入JavaHelp系统数据。
JavaHelp系统数据具有调用在线帮助的能力,能够在应用程序GUI中描述图形组件。用户操纵激活语境敏感帮助,然后将组件以问题形式特定化。与组件相联系的ID被显示。您可以从TOC、索引导航或主要窗口的内容窗格中显示帮助话题。
轻型组件
轻型组件能够向帮助话题添加功能。这些组件与Java的applet相似,但它们的加载和执行更为迅速。一个帮助的创作者能够使用已经在JavaHelp中执行的轻型组件;这个组件执行弹出窗口和次级窗口。在HTML 话题文件中使用轻型组件,您可以使用HTML <object>标记,正如列表A中的例子所显示的。
在例子中,弹出的对象包括文件../topicB/glossary_def.html,用户点击的对象(viewerActivator)是个链接,窗口类型属于弹出型,窗口大小为300x400,用户在链接中看到的内容是“Click here(点击这里)”。
Java开发商还可以创造新的轻型组件。例如,这样的组件可能为帮助话题添加动画和多媒体功能。
要求抽象查看的轻型组件必须执行javax.javahelp.impl.ViewAwareComponen。这些组件执行setViewData()方法。这个组件能够根据抽象查看中的信息决定它所执行的环境。(注意:要访问抽象查看,您应该使用JavaHelp API。)在列表B中,文档对象下面的编码片断来自于抽象查看。
需要更多关于创造Java轻型组件的信息,请参阅相关文件。
JavaHelp编写工具
有很多通过商业途径可以得到的编写工具能够为您的应用程序编写和维护一个完美的帮助系统。最有名的三个是Software7 Gmbh的Helen 1.5、Solutionsoft的HelpBreeze和Pivotonic的JawaHelpAuthor。所有这些第三方产品都支持Java 2 和Java 1.1标准。需要更多关于编写工具的信息,请参阅Sun的帮助编写工具页面。
试试看吧
如果JavaHelp听起来像是一个您认为您的用户和伙伴开发商都喜欢的系统的话,那么从Sun Microsystem公司的网站上立刻下载吧。这个地址提供了安装过程所需要的所有信息。
责任编辑:张琎
查看本文的国际来源
|