-
フィーチャ テンプレートの操作
[vb title="VBA"] Public Sub AddFeatureTemplate() Dim pMxDocumenet As IMxDocument Set pMxDocumenet = ThisDocument Dim pFeatureLayer As IFeatureLayer Set pFeatureLayer = pMxDocumenet.SelectedLayer '選択レイヤの取得 Dim pDataset As IDataset Set pDataset = pFeatureLayer.FeatureClass ... -
編集セッションでフィーチャ選択時に属性ウィンドウに属性を表示
[vb title="VBA"] Private Sub UIButtonControl1_Click() '編集セッションで[属性]ウィンドウ表示時、コードでフィーチャを選択してもウィンドウに属性値が表示されない。これを更新するには、ISelectionEvents::SelectionChangedのキックが必要 'http://forums.esri.com/thread.asp?c=93&f=992&t=118750 'http://forums... -
編集オペレーションとオペレーション スタックの連動
[vb title="VBA"] Private Sub UIToolControl1_MouseDown(ByVal button As Long, ByVal shift As Long, ByVal x As Long, ByVal y As Long) Dim pMxDoc As IMxDocument Set pMxDoc = ThisDocument Dim pFL As IFeatureLayer Set pFL = pMxDoc.FocusMap.Layer(0) Dim pFC As IFeatureClass Set pFC = p... -
選択されているレイヤのワークスペースを対象に編集を開始する方法
[vb title="VBA"] '選択レイヤのワークスペースで編集開始 Private WithEvents EditEvents As Editor Private m_pEditor As IEditor Private Sub StartEditing() '------------- 選択レイヤのチェック ---------------------------------- Dim pMxDoc As IMxDocument Set pMxDoc = ThisDocument If pMxDoc.SelectedL... -
WYSIWYG エディタのシンボル変更
[vb title="VBA"] Sub ChangeWYSIWYGsymbol() Dim pUID As New UID pUID = "esriEditor.Editor" Dim pApplication As IApplication Set pApplication = Application Dim pEditor As IEditor Set pEditor = pApplication.FindExtensionByCLSID(pUID) Dim pEditSketch As IEditSketch3 ... -
UtilityNetworkAnalysisExt オブジェクトの取得と解析結果オプションの変更
ユーティリティネットワーク解析 ツールバー → 解析 → オプションから設定する、解析オプション ダイアログの解析結果 タブは以下のようにアクセスして設定します。 IApplication::FindExtensionByCLSID を用いて、UtilityNetworkAnalysisExt オブジェクトを取得します。このオブジェクトにあるプロパティで、ダイアログ内の設定を変更できま... -
マップ トポロジーの利用
[vb title="VBA"] 'This example demonstrates how to hook up to the Maptopology Sub HookUpToMapTopology() Dim bTopoExSuccessed As Boolean, pMapTopology As IMapTopology, sPath As String, pWFactory As IWorkspaceFactory Dim pFWorkspace As IFeatureWorkspace, pfc0 As IFeatureClass, pTopologyGraph As ITopologyGraph Dim pg... -
クエリ レイヤーの作成
[vb title="VBA"] Sub CreateQueryLayer() Dim pWorkspaceFactory As IWorkspaceFactory Set pWorkspaceFactory = New SqlWorkspaceFactory Dim pPropertySet As IPropertySet Set pPropertySet = New PropertySet pPropertySet.SetProperty "DBCLIENT", "sqlserver" pPropertySet.... -
既存のクエリ レイヤーから情報を取得
[vb title="VBA"] Sub GetQueryLayerInfo() Dim pMxDoc As IMxDocument Set pMxDoc = ThisDocument Dim pFL As IFeatureLayer Set pFL = pMxDoc.FocusMap.Layer(0) Dim pDataset As IDataset Set pDataset = pFL Dim pQueryTableName As IQueryTableName Set pQueryTableName = pData... -
DataServerManager を使用した Workspace の取得
[vb title="VBA"] Private Sub ConnectToSDEExpress() Dim pDataServerManager As IDataServerManager Set pDataServerManager = New DataServerManager pDataServerManager.ServerName = "zeke\sqlexpress" '<サーバ名>\sqlexpress pDataServerManager.Disconnect '切断 pDataServerMa...
