YouTube | Facebook | Twitter  Feed

選択されているレイヤのワークスペースを対象に編集を開始する方法

2016/9/1 (木)

'選択レイヤのワークスペースで編集開始
Private WithEvents EditEvents As Editor
Private m_pEditor As IEditor
 
Private Sub StartEditing()
    '------------- 選択レイヤのチェック ----------------------------------
    Dim pMxDoc As IMxDocument
    Set pMxDoc = ThisDocument
     
    If pMxDoc.SelectedLayer Is Nothing Then
        MsgBox "編集するレイヤをTOCで最初に選択してください", vbExclamation
         
        Set pMxDoc = Nothing
        Exit Sub
     
    End If
     
    '---------- 編集セッションを開始してEditEventsをIEditorをQI -----------
    Dim pApp As Application
    Set pApp = Application
     
    Dim pUID As New UID
    pUID = "esriEditor.Editor"
'    puid = "esricore.Editor"
     
    'Dim pEditor As IEditor
    Set m_pEditor = pApp.FindExtensionByCLSID(pUID)
    Set EditEvents = m_pEditor  'ここでIEditorのイベントセット
     
    Dim pFLayer As IFeatureLayer2
    Set pFLayer = pMxDoc.SelectedLayer
     
    Dim pDataset As IDataset
    Set pDataset = pFLayer.FeatureClass
     
    Dim pWorkspace As IWorkspace
    Set pWorkspace = pDataset.Workspace
     
    m_pEditor.StartEditing pWorkspace
     
    '---------- 編集ターゲットをTOCでの選択レイヤにする -------------------
     
    Dim pEditLayers As IEditLayers
    Set pEditLayers = m_pEditor
     
    pEditLayers.SetCurrentLayer pFLayer, 0
     
End Sub

関連記事

  • この記事を書いた人

羽田 康祐

Twitter#一日一図法を連載中。GIS上級技術者、Esri認定インストラクター、CompTIA CTT+ Classroom Trainer、潜水士、元PADIダイブマスター、四アマ。WordPress は 2.1 からのユーザーで歴だけは長い。 代表著書『地図リテラシー入門―地図の正しい読み方・描き方がわかる』 GIS を使った自己紹介はこちら。ESRIジャパン(株)所属、青山学院大学非常勤講師を兼務。発言は個人の見解です。

-プログラミング, ArcGIS
-,