TOPページへ戻る  PCページへ戻る  一覧へ戻る

WinHelpを呼び出す

Lazarusでは、Application.HelpCommandが実装されていません(OSに依存するから、だそうです)。 WinHelpは、USES節にWindowsを追加して以下のコードで呼び出します。


Windows.WinHelp(ウィンドウのハンドル,
			PChar(ヘルプファイル名),
			ヘルプの種類,
			追加のデータ);

ウィンドウのハンドルにはメインフォームのHandleを渡します。 ヘルプファイル名は、ヌル終端の文字列PChar型で渡します。 ヘルプの種類は、トピックの検索を表示するHelp_Finderなどがあります。 (参考:MicrosoftのMSDN Library Japan) 追加のデータは、ヘルプの種類によって変わります。例えば、Mapで指定されたページを表示するHelp_Contextが ヘルプの種類に渡された場合、表示したいMap番号を追加のデータに非負の整数で渡します。

Delphiの場合、呼び出されたヘルプはアプリケーション終了時に自動で閉じます。 Lazarusではそのような機能が実装されていないので、ヘルプを閉じるコードをOnDestroyイベントに 記述します。このコードは、ヘルプファイルが表示されていない時に実行してもエラーを発生しない ようです。


Windows.WinHelp(Handle,nil,Help_QUIT,0);

TOPページへ戻る  PCページへ戻る  一覧へ戻る