ToolbarControlClass 3つの主なインタフェースがあります。
IToolbarControl、IToolbarControl2、IToolbarControlDefault
これは、IToolbarControlDefaultは最新バージョンでは、彼らがIToolbarControl3を持っている場合は、IToolbarControlDefaultはIToolbarControl3である、つまり、常にIToolbarControlで、「純粋な」ディスパッチインターフェイスである一方、IToolbarControl2がIToolbarControlの新バージョンです。
ToolbarControlに項目を追加することができますIToolbarControlDefaultメンバーで3あります。
AddItemメソッド():ICommandの、IMenuDef、IToolbarMenu、iToolの、の達成をサポート、ToolbarControlに項目を追加 IToolControl、IPaletteDefとIToolbarPalette クラスを。
AddMenuItem():ToolbarControl IMenuDefの達成をサポートする、メニュー項目、簡単にAddItemメソッド(せん断)バージョンを追加するには、IToolbarMenuクラス
AddToolbarDef() :アイテムToolbarControlにカスタムツールを追加します。
AddItemメソッドの例下:
最初のパラメータはオブジェクトのタイプであり、それは実質的であってもよい:UID、プログラムID、インタフェース(のICommand、IToolBarDef ...)、例えば
// UIDによるコマンドの追加
UIDにuID = 新しいUIDClassを(); uID.Value = " esriControls.ControlsMapFullExtentCommand " 。axToolbarControl1.AddItem(UID、- 1 、- 1 、偽、0 、esriCommandStyles.esriCommandStyleIconOnly)。// プログラムIDのことで、コマンドを追加する文字列のProgID = 「esriControls.ControlsMapFullExtentCommand 」。axToolbarControl1.AddItem(PROGID、- 1 、- 1 、偽、
0 、esriCommandStyles.esriCommandStyleIconOnly)。
// のICommandによって、コマンドの追加
のICommandコマンド= 新しいControlsMapFullExtentCommandClass()。axToolbarControl1.AddItem(コマンド、- 1 、- 1 、偽、0 、esriCommandStyles.esriCommandStyleIconOnly)。
ToolbarControlは内部CommandPoolがあり、コマンドはされていない場合、これはコマンドが作成されます。AddItemメソッドCommandPoolは、コマンドが既に存在するかどうかを確認し、時間にToolbarControlに追加する場合。管理を格納するために使用され、このカウントコマンドを使用して、CommandPoolを追加しましたコマンドが既に存在する場合は1に設定され、使用カウントがインクリメントされ、再利用されます。
組み込みコントロールノートESRI.ArcGIS.Controls。このようなControlsMapZoomInFixedCommandClassにCommandClass一般的に終了すると、実装のICommandのインターフェイスを。このコマンドは永久にのiToolのMapControlをするためにこのようなControlsMapZoomInToolClassとして、インタフェースとの対話が必要になりますToolClass端が達成されていますiToolの実装クラス.ControlsFeatureSelectionToolbarClass IToolBarDef使用中の様々なインタフェースを実装するインタフェースクラスは異なっています。
ICommandのコマンドは= 新しいControlsOpenDocCommandClass(); command.OnCreate(m_mapControl.Object)。command.OnClick(); ICommandのpCommand = 新しいESRI.ArcGIS.Controls.ControlsMapZoomInToolClass(); pCommand.OnCreate(axMapControl1.Object)。axMapControl1.CurrentTool = pCommand としてのiTool。
ArcEngineでは、ツールバーの使用方法を選択することができます。
ArcEngine ToolbarControlの1.、追加機能を使用して、既存のコマンドコントロールを追加します。
ArcEngine ToolbarControlの2.は、コマンドのICommandかのiTool(またはBaseCommand BaseToolまたは抽象クラス)から継承されて追加のコースを使用して、関数の独自の実装をコントロール追加します
3.カスタムツールバーを作成するために、IToolBarDefインターフェイスを達成するために(ツールバー)
4. ControlsXXXXXXClass一般的には、ボタン、メニュー項目やツールバー
<上記の純粋に個人的な理解で、間違った場合は、あなたに感謝し、メッセージを残してください>
ます。https://www.cnblogs.com/LoveLyre/archive/2011/08/31/2160640.htmlで再現