首页 / 软件开发 / Delphi / 第十一章-Delphi应用程序的应用(二)(1)
第十一章-Delphi应用程序的应用(二)(1)2007-05-07所有的应用程序都是TApplication的派生类。TApplication有三种方法调用在线帮助系统。HelpContext方法可调用WinHelp(关于Winhelp的内容见上节)。它把HelpFile 中的文件名和一个文本代码传递给WinHelp。HelpFile是TApplication的字符串类型的属性,专门用来存放Help文件的。如果HelpFile属性是空字符,HelpContext返回假值,其它情况均返回真值。下面的例子使用窗体上的一个按钮,当用户单击按钮,屏幕出现DATA.HLP文件中714号主题内容。 procedure TForm2.Bin1Click(Snder : TObject)beginApplication.HelpFile := DATAHLP;Application.HelpContext(714); end; HelpJump方法可调用WinHelp。它传递HelpFile属性中的文件名和帮助文件的内容字符串(详见11.1节)。内容字符串是帮助文件中唯一辨识帮助主题的字符串。如果HelpFile 属性是空字符,HelpFJump返回假值,其它情况均返回真值。下面的例子使用了窗体上的一个按钮。当用户单击按钮, 帮助系统调出了 DELPH2.HLP文件中的Default属性。因为Default属性的内容字符串是VclDefaultProperty。 procedure TForm1.Tbn|Click(Sender : TObject)beginApplication.HelpFile := "DELPHI.HLP";Application.HelpJump ("VclDefaultProperty");end HelpCommand方法能快速访问WinHelp函数中的各种命令。根据这些命令WinHelp执行不同的动作。表11.2是WinHelp函数的有关信息。BOOL WinHelp(hwd,LpszHelpFile,fuCommand,dwData) 表11.2 WinHelp的参数及含义 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━参数 类型 描 述───────────────────────────────hwnd HWND 请求帮助的窗口LpszHelpFile LPSTK 待显示的帮助文件的文件名fuCommand UNIT 请求的帮助类型dwData DWORD 帮助所需的描述表或关键字 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ HelpCOmmand向WinHelp传递fuCommand和dwData,fuCommand 是帮助类型可为表11.3中的列值之一。 表11.3 fuCommand的取值及含义 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━值 含 义───────────────────────────────HELP_LONTEXT 显示dwData指定描述长的帮助信息HELP_CONTENTS 显示帮助的内容主题HELP_SET_LONTENTS 如果dwData是Orol04则在一个弹出 式窗口中显示Help主题HELP_HELP PONHELP 显示Help应用程序的自身帮助,函 数忽略lpszHelpFile和dwData参数HELP_INDEX 显示帮助文件的索引HELP_KEY 显示dwData指定的关键字的帮助HELP_MULTIKEY 显示一个关键字的帮助,该关键字 在一个可变关键字表中HELP_QUIT 向Help应用程序报告文件不再使用HELP_SETNDEX 把dwData指定的描述符作为帮助文件的当前索引 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ dwData参数的含义依赖于fuCommand的设置,如果fuCommand为HELP_CONTEXT,dwData为一个32 位的无符号整数,它包含一个描述表标识号:如果 fuCommand 为 HELP_KEY,dwData 则为一个指定长指针,所指的字符串是帮助的关键字。 如果 fuCommand 为HELPMULLTIKEY,dwData则指向一个MULTIKEYHELP数据结构的长指针。下面的例子使用了窗体中的按钮。当用户单击按钮帮助系统将显示指定文件的帮助内容主题。 procedure TForm1.Bin1Click(Sender : TObject)beginApplication.HelpFile := "MyHlep.HLP"Application.HelpCommand(HELP_CONTENTS,0);end;