System.HelpIntfs.RegisterViewer
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 を他のユニットから呼び出して、登録されているヘルプ ビューアのヘルプ システム メソッド群にアクセスすることができます。