System.HelpIntfs.RegisterViewer

提供: RAD Studio API Documentation
移動先: 案内検索

Delphi

function RegisterViewer(const newViewer: ICustomHelpViewer; out Manager: IHelpManager): Integer;

C++

extern DELPHI_PACKAGE int __fastcall RegisterViewer(const _di_ICustomHelpViewer newViewer, /* out */ _di_IHelpManager &Manager);

プロパティ

種類 可視性 ソース ユニット
function public
System.HelpIntfs.pas
System.HelpIntfs.hpp
System.HelpIntfs System.HelpIntfs

説明

ヘルプ要求を受け取るヘルプ ビューアを登録します。


RegisterViewer を呼び出すと、ヘルプ システムにヘルプ ビューアを登録できます。アプリケーションでは、任意の数のビューアを登録できます。ヘルプ ビューアの登録順序は重要な意味があります。ヘルプ要求のたびに、RTL ヘルプ システムではビューアを登録順にポーリングし、そのヘルプ要求を処理可能と宣言している最初のビューアにヘルプ要求を渡すからです。アプリケーションでは、ヘルプ セレクタ オブジェクトを提供することで、この動作をキーワードベースのヘルプ要求用にオーバーライドしたり、目次を表示する要求用にオーバーライドすることができます。

ヘルプ ビューア オブジェクトは、newViewer パラメータで渡します。

RegisterViewer は、ヘルプ マネージャ オブジェクトを Manager パラメータで返します。ヘルプ ビューアでは、このオブジェクトを使用してヘルプ システムとやり取りします。

RegisterViewer の戻り値は、ビューアが正常に登録された場合は True、そうでない場合は False です。

VCL ライブラリには Vcl.HtmlHelpViewer ユニットが定義されており、そこに、HTMLHelp 外部ヘルプ ビューアへの Delphi インターフェイスが用意されています。HTMLHelp は Windows のネイティブ ヘルプ処理関数です。アプリケーションで HTMLHelp ベースのヘルプ ビューアを登録するには、アプリケーションの uses 句に Vcl.HtmlHelpViewer ユニットを挿入します。Vcl.HtmlHelpViewer ユニットの initialization セクションでは、RegisterViewer を呼び出して、作成したヘルプ ビューアを登録します。

 initialization
   HelpViewer := THtmlHelpViewer.Create;
   System.HelpIntfs.RegisterViewer(HelpViewerIntf, HelpViewer.FHelpManager);

詳細は以下のとおりです。

  • 1 行目の THtmlHelpViewer.Create コンストラクタでは、ヘルプ ビューア オブジェクト HelpViewerIntf を内部的に生成します。
  • 2 行目では RegisterViewer 関数を呼び出して、このヘルプ ビューアを登録します。

グローバル関数 System.HelpIntfs.GetHelpSystem を他のユニットから呼び出して、登録されているヘルプ ビューアのヘルプ システム メソッド群にアクセスすることができます。