Private Sub UIButtonControlAddField_Click() Dim sToolName As String sToolName = "Test Add Field" Dim pMxDoc As IMxDocument Dim pLayer As ILayer Dim pFeatureLayer As IFeatureLayer Dim pFeatureClass As IFeatureClass Dim pField As IField Set pMxDoc = Application.Document Set pLayer = pMxDoc.SelectedLayer ' Make sure some type of layer is selected If (pLayer Is Nothing) Then MsgBox "Please Select a feature layer.", vbOKOnly, sToolName Exit Sub End If ' Make sure a feature layer (not a group layer) is selected If Not (TypeOf pLayer Is IFeatureLayer) Then MsgBox "Please Select a feature layer.", vbOKOnly, sToolName Exit Sub End If Set pFeatureLayer = pMxDoc.SelectedLayer Set pFeatureClass = pFeatureLayer.featureClass Set pField = MakeIntField("COUNT") AddFieldToFeatureClass pFeatureClass, pField End Sub Public Function MakeIntField(fieldName As String) As IField Dim pFieldEdit As IFieldEdit Dim pField As IField Set pField = New field Set pFieldEdit = pField pFieldEdit.Name = fieldName pFieldEdit.Type = esriFieldTypeInteger Set MakeIntField = pField End Function Public Sub AddFieldToFeatureClass(featureClass As IFeatureClass, field As IField) Dim schemaLock As ISchemaLock On Error GoTo ErrorHandler Set schemaLock = featureClass schemaLock.ChangeSchemaLock (esriSchemaLock.esriExclusiveSchemaLock) featureClass.AddField field schemaLock.ChangeSchemaLock (esriSchemaLock.esriSharedSchemaLock) Exit Sub ErrorHandler: schemaLock.ChangeSchemaLock (esriSchemaLock.esriSharedSchemaLock) End Sub
Aangemelde leden kunnen berichten plaatsen, updates volgen en meer. Nieuw hier? Registreer een gratis account.
Find useful guides, FAQs, and documents to help you navigate and make the most of Esri Community.