Overview

In this course students learn the fundamentals of VBA application development, Object-oriented programming concepts, and the specifics of working with ArcObjects. Students learn to use VBA development tools including VB editor, customize dialog box, and online help resources. They also learn the syntax for writing simple VB statements, how to write branching and looping structures, and how to design user forms. Object-oriented programming concepts are described including the advantages of COM in which all ArcObjects classes are based. Interface programming, which may be new to seasoned programmers, is an important aspect of programming with the ArcObjects library and is covered in detail. ArcGIS Desktop software Programs (ArcView 8,ArcEditor 8, and ArcInfo 8) share the same architecture, and the knowledge gained in this course applies to all three. Class time is mostly spent doing hands-on programming exercises, where students write code that exposes them to many typical GIS programming tasks as well as to the most commonly used ArcObjects classes. Upon finishing the course, students will have plenty of sample code from which they can build their own applications.

Audience

For those who work with ArcMap and ArcCatalog on a technical level (analysts, programmers, and project managers) but may be new to programming with VBA. It is ideal for users who want to increase productivity by extending ArcGIS applications and for developers who want to create custom applications using VBA.

Goals

  • Customize the GUI

  • Learn VBA fundamentals

  • Learn Object-oriented programming concepts

  • Get help for writing code

  • Navigate the ArcObjects OMD

  • Programming with ArcMap objects

  • Programming with ArcCatalog objects

  • Programming with geodata, display, and geometry objects

Topics

VB development environment: Customizing the user interface and writing and debugging code

VB language fundamentals: VB syntax, code storage, VB functions, branching and looping, and creating user forms

Object-oriented programming concepts: Objects and classes; class libraries; methods, properties, and events

COM: Advantages of COM, defining a COM class, and interface programming

Reading OMDs: Class relationships, class types, and using diagrams to write code

Maps and layers: Accessing maps and layers, adding a layer to ArcMap, and classifying and symbolizing layers

Customizing ArcCatalog: Manipulating files in the catalog and defining file types to be displayed

Working with data: Accessing data sets on disk, creating new data, editing data, and applying a domain to a geodatabases field

Geometry: Creating various types of geometry, displaying geometry on the display, storing geometry, and spatial operations

Spatial and attribute selections: Accessing a user selection, defining an attribute or spatial query, and processing a subset of records

Layouts: Programmatically formatting a map layout, adding elements, defining symbols and colors for map elements, and accessing items from the ArcMap style gallery

Creating tools: Getting user input, transforming mouse input to map units and working with the display

Programming ArcObjects events: Outbound versus inbound interfaces, finding events on OMDs, and accessing an object’s outbound interface

Prerequisites

  • Introduction to ArcGIS Part 1 (for ArcView 8,ArcEditor 8, and ArcInfo 8) or have equivalent knowledge

  • Students should know the following:

    • Declare and use variables

    • Write function and sub procedures

    • Use conditional statements (i.e. If, Then, Else, Select Case)

    • Work with loops (Do and While loops)

    • Create forms, add controls, and write event procedures

  • If the above is not known, an introductory course in VB/VBA must be completed before the start of the course

Duration: Five days

Company Profile | Products | Training | Solutions | Support | Contact Us