このサイトをビューするために JavaScript を有効化してください。

Altova MapForce 2020 Enterprise Edition

アプリケーションレベルの統合に比べ、 ドキュメントレベルの統合複雑ですが、 ActiveX コントロール。を使用することによりアプリケーションに MapForce 機能を柔軟的に埋め込むことができます。 このアプローチにより、コードは MapForce ユーザーインターフェイスの次のパーツに部分的にアクセスすることができます:

 

ドキュメントの編集ウィンドウ

プロジェクトウィンドウ

ライブラリ ウィンドウ

概要ウィンドウ

メッセージウィンドウ

 

アプリケーションレベルの統合 で説明されているとおり、ActiveX アプリケーションレベルの統合のためには、 MapForceControl のみが必要とされる唯一のコントロールです。しかしながら、 ActiveX ドキュメントレベルの統合の場合は、 機能 MapForce が次の ActiveX コントロールにより与えられます:

 

1.MapForceControl

2.MapForceControl ドキュメント

3.MapForceControl プレースホルダ

 

これらのコントロールは MapForce のアプリケーション インストール フォルダーで使用することのできる MapForceControl.ocx ファイルにより与えられます。 Visual Studio を使用して ActiveX 統合を開発すると、これらのコントロールを Visual Studio ツールボックスに追加する必要があります (次を参照してください: ActiveX コントロールをツールボックスに追加する)。

 

ドキュメントレベルでの ActiveX コントロールのアプリケーションへの統合の基本のステップは、以下のとおりです:

 

1.最初に、アプリケーション内で MapForceControl をインスタンス化します。 MapForceControl ドキュメント」 MapForceControl プレースホルダ」 コントロールへのサポートが有効化されるために、このコントロールの統合は必須です。IntegrationLevel プロパティを I「CActiveXIntegrationOnDocumentLevel」 (または 「1」)に設定することは重要です。ユーザーに対してコントロールを非表示にするには、「Visible」プロパティを「False」に設定します。

 

メモ:ドキュメントレベルで統合する場合、未知の結果が生成される可能性があるため、 MapForceControl「開く」 メソッドを使用しないでください。MapForceControl ドキュメントMapForceControl プレースホルダ の対応するメソッドを代わりに使用して開いてください。

 

2. MapForceControl ドキュメント のインスタンスを少なくとも1つアプリケーション内に作成します。このコントロールは、アプリケーションに MapForce のドキュメントの編集ウィンドウを与え、必要であれば、複数回インスタンス化することができます。

 

既存のファイルを開くために、メソッド 「開く」を使用します。 ドキュメントに関連した機能にアクセスするには、メソッドとプロパティ 「ドキュメント」を介してアクセスすることのできる 「パス」「保存」 を使用します。

 

メモ:コントロールは、読み取り専用モードをサポートしません。 プロパティ 「読み取り専用」 の値は無視されます。

 

3.任意で、 アプリケーションに、アプリケーションで使用することのできる(ドキュメント ウィンドウ以外の)各追加ウィンドウのために MapForceControl プレースホルダ コントロールを追加することができます。

 

MapForceControl プレースホルダ のインスタンスによりアプリケーションウィンドウに選択して MapForce の追加ウィンドウを埋め込むことができます。 ウィンドウの種類 (例えば、 プロジェクトウィンドウ) は プロパティ 「PlaceholderWindowID」 により定義することができます。有効なウィンドウの識別子のためには、次を参照してください: MapForceControlPlaceholderWindow.

 

メモ:各ウィンドウ識別子のために MapForceControl プレースホルダ」のみを使用してください。

 

MapForce プロジェクトウィンドウを選択するプレースホルダーコントロールのために、 追加メソッドを使用することができます。「OpenProject」 を使用して、MapForce プロジェクトをロードすることができます。MapForce 自動化インターフェイスからプロパティプロジェクトとメソッドを使用して、他のプロジェクトに関連したオペレーションを操作します。

 

例えば、Visual Studio を使用した C# または VB.NET 内では、 MapForce ActiveX コントロールをドキュメントレベルで統合する基本的なアプリケーションの作成ステップは、以下にリストされるものに類似しています。必要に応じて適用は複雑になる可能性があります。しかしながら、 ActiveX ドキュメントレベルの統合のための必要条件として、下の命令を理解することは重要です。

 

1.新規の空のフォームと共に新規の Visual Studio Windows Forms プロジェクトを作成します。

2.まだ行っていない場合、ActiveX コントロールを ツールボックスに追加します (次を参照してください: ActiveX コントロールをツールボックスに追加する)。

3.ツールボックスから MapForceControl をドラッグして新規のフォームにドラッグします。

4.MapForceControl「IntegrationLevel」 プロパティを 「ICActiveXIntegrationOnDocumentLevel」 に、と 「Visible」 プロパティを 「False」 に設定します。コードから、または、「プロパティ」 ウィンドウから行うことができます。

5.MapForceControl ドキュメント をツールボックスからフォームにドラッグします。  このコントロールは、使用中のアプリケーションに MapForce のメインウィンドウを与え、ドキュメントのためにサイズを調整することができます。

6.代わりに、フォームに1つまたは複数の MapForceControl プレースホルダ コントロールを追加することができます (アプリケーションが必要とする各追加ウィンドウの型など。 例えば、「プロジェクト」 ウィンドウなど)。このような追加プレースホルダー コントロールをメインドキュメントコントロールの下、または、左右に通常配置します。 例:

ax_control_windows

7. MapForceControl プレースホルダ」 コントロールの PlaceholderWindowID」 プロパティを有効な ウィンドウ識別子に設定してください。 有効な値のリストに関しては、次を参照してください: MapForceControlPlaceholderWindow

8. アプリケーションにコマンドを以下のように追加します (少なくとも、ドキュメントを開き、保存し、閉じる必要があります)。

 

 

MapForce コマンドをクエリする

 

ドキュメントレベルで統合する場合は、MapForce メニュー または ツールバーをアプリケーションで使用することはできません。 代わりに、 必要とするコマンドを取得し、状態を確認し、プログラム的に実行することができます:

 

使用することのできるすべてのコマンドを取得するには、MapForceControlCommandsList プロパティを使用します。

メニュー構造により整理されているコマンドを取得するには、 メイン Menu プロパティを使用します。

表示される順番に整理されているコマンドを取得するには、 Toolbars プロパティを使用します。

MapForce にコマンドを送信するには、 Exec メソッドを使用します。

コマンドが現在有効化されているか、または、無効化されているかクエリするために、QueryStatus メソッドを使用します。

 

これにより MapForce コマンドをアプリケーションの メニューとツールバーに柔軟的に統合することができます。

 

MapForce のインストールは、 MapForce 内で使用されているコマンドラベルを与えます。GIF 書式内のアイコンのために MapForce インストールのフォルダー 「<ApplicationFolder>\Examples\ActiveX\Images」 を参照してください。 fコマンド名に対応する ファイル名は、コマンド参照 セクション内にリストされています。

 

 

一般的な注意点

 

MapForce の振る舞いを自動化するには、 MapForceControlMapForceControl ドキュメントMapForceControl プレースホルダ内で説明されている プロパティ、メソッド、 とイベントを使用してください。  

 

MapForce 機能への高度なアクセスに関しては、 次の プロパティを考慮してください:

 

MapForceControl.Application

MapForceControlDocument.Document

MapForceControlPlaceHolder.Project

 

これらのプロパティは MapForce 自動化インターフェイス (MapForceAPI)へのアクセスを提供します

 

メモ:ドキュメントを開くには、適切な ドキュメントコントロールの MapForceControlDocument.Open または MapForceControlDocument.New を使用してください。  プロジェクトを開くには、 MapForce プロジェクトウィンドウを埋め込むプレースホルダ コントロール上のMapForceControlPlaceHolder.OpenProject を常に使用してください。

 

異なるプログラミング環境内で必要なコントロールをインスタント化しアクセスする方法を説明するサンプルに関しては、次を参照してください: ActiveX 統合のサンプル

(C) 2019 Altova GmbH