-
ITOCControl::HitTest メソッドの使用例
[vb title="VBA"] 'ITOCControl::HitTestメソッド サンプル 'ITOCControl::HitTestメソッドによるデータフレーム、レイヤ、凡例オブジェクトの取得方法 Private Sub TOCControl1_OnMouseDown(ByVal button As Long, ByVal shift As Long, ByVal x As Long, ByVal y As Long) 'TOCControlの取得 Dim pTOCControl As ITOCControl... -
IEngineEditEvents を使用したカスタム イベント
[csharp title="C#"] //デリゲート変数宣言 private IEngineEditEvents_Event m_pEngineEditEvents; private void Initialize() { //イベントハンドラの追加 IEngineEditor pEngineEditor = new EngineEditorClass(); m_pEngineEditEvents = (IEngineEditEvents_Event)pEngineEditor; m_pEngineEditEvents.OnVertexMoved ... -
クリップボードにマップのグラフィックをコピー
[csharp title="C#"] // http://forums.esri.com/Thread.asp?c=159&f=1707&t=268556 private void axMapControl1_OnMouseDown(object sender, IMapControlEvents2_OnMouseDownEvent e) { IRubberBand pRubberPoly = new ESRI.ArcGIS.Display.RubberEnvelopeClass(); IEnvelope myenv = pRubberPoly.TrackNew(this.axMapC... -
EngineEditor の初期化
ToolbarControlに追加・削除を繰り返す際はEngineEditorはシングルトン クラスを都度開始・終了処理する必要がある。オペレーションスタックがうまく動作しない [csharp title="C#"] //--------------------------------------------------------------------- /// <summary> /// エディタエクステンションを開始する /// </summary... -
Engine でスケッチに対してスナップを設定する方法
[csharp title="C#"] ' http://help.arcgis.com/en/sdk/10.0/arcobjects_net/componenthelp/index.html#/SnapEditorForm/0048000000m7000000/ '/ <summary> '/ Turns on or turns off the Edit Sketch snap agents by adding or removing them '/ </summary> Private Sub AddSketchSnapAgents() 'give anchor snap (i.e. ver... -
Engine で ITool からフォームを取得する方法
[csharp title="C#"] public override void OnClick() { m_map = m_hookHelper.FocusMap; // このツールが格納されているForm1を取得 try { // ツールバーのバディからMapControlを取得 IToolbarControl2 tlb = (IToolbarControl2)m_hookHelper.Hook; IMapControl4 mapctrl = (IMapControl4)tlb.Bud... -
BaseTool を使用したフラッシュ
[vb title="Visual Basic"] 'フィーチャの取得 Dim pPoint As IPoint = m_hookHelper.ActiveView.ScreenDisplay.DisplayTransformation.ToMapPoint(X, Y) Dim pIdentify As IIdentify = CType(pCountryFeatureLayer, IIdentify) Dim pArray As IArray = pIdentify.Identify(CType(pPoint, IGeometry)) If pArray Is Nothing Then Messa... -
BaseClass を直接 ToolbarControl に追加する方法
[vb title="Visual Basic"] Dim pCommand(2) As ICommand pCommand(0) = New PrintSettings pCommand(1) = New PrintPreview pCommand(2) = New Print Dim pToolbarControl As IToolbarControl = CType(axToolbarControl1.Object, IToolbarControl) For i As Integer = 0 To pCommand.Length - 1 axToolbarControl1.AddItem(pCommand... -
メタデータの不要項目削除
[vb title="VBA"] Public Sub ClearLineage() Dim pGxApp As IGxApplication Dim pGxView As IGxView Dim pMD As IMetadata Dim pPS As IPropertySet Dim dNow As Date Set pGxApp = Application Set pMD = pGxApp.SelectedObject Set pPS = pMD.Metadata pPS.RemoveProperty "Esri/Da... -
カタログ ウィンドウの指定したパスを展開
[csharp title="C#"] public void ExpandSelecetdTreeNode() { IGxApplication gxApplication = default(IGxApplication); gxApplication = Application; IGxTreeView gxTreeView = default(IGxTreeView); gxTreeView = gxApplication.TreeView; IGxView gxView = default(IGxView); gxView = gxTreeView; ...
