In diesem Dokument werden die Konzepte eingeführt, die wichtig für das Verständnis sind, wie Add-Ins mit Python erstellt werden.
Python Add-In-Assistent
Um die Entwicklung der Add-Ins zu vereinfachen, sollten Sie den Python Add-In-Assistenten herunterladen und zum Deklarieren des Anpassungstyps verwenden. Der Python Add-In-Assistent verkürzt die Entwicklungszeit und reduziert mögliche Fehler beim Erstellen der für das Funktionieren des Add-Ins erforderlichen Dateien und Ordner.
Download des Python Add-In-Assistenten.
Der Download besteht in einer komprimierten ZIP-Datei (.zip), die alle zur Unterstützung des Assistenten erforderlichen Dateien enthält. Entpacken Sie den Inhalt in einen Ordner und suchen Sie die ausführbare Datei namens addin_assistant.exe im Ordner bin. Doppelklicken Sie auf diese EXE-Datei, um den Assistenten zu starten. Verwendungsbeispiele für den Python Add-In-Assistenten sind in den Themen zum Erstellen eines Add-Ins aufgeführt.
Datei- und Ordnerstruktur
Ein Add-In ist eine Zusammenstellung aus Dateien und Ordnern, die zweckmäßig in einer komprimierten Datei mit der Erweiterung .esriaddin verpackt sind, damit Benutzer und das ESRI ArcGIS Add-In-Installationsdienstprogramm sie leicht identifizieren können. Wenn Sie beispielsweise im Windows-Explorer, auf einer Website oder in einer E-Mail auf ein Add-In doppelklicken, installiert das Add-In-Installationsdienstprogramm automatisch das Add-In auf Ihrem Rechner und stellt es in einem bekannten Ordner bereit.
Add-Ins verfügen über eine Datei config.xml im Stammverzeichnis des Add-In-Archivs. Diese Datei beschreibt das Add-In und deklariert die Anpassungen. Sie wird vom Python Add-In-Assistenten erstellt, wenn Sie auf die Schaltfläche +++Save klicken, und enthält alle Informationen zur Beschreibung des Add-Ins, z. B. ArcGIS-Produkt, Titel, ToolTips, Hilfeinformationen, Bilder und Layoutdetails.
Zu Add-Ins gehört außerdem der Ordner "Install". Der Hauptzweck des Ordners "Install" besteht darin, das Python-Skript (den aktiven Teil) des Add-Ins darin zu speichern. Beispielsweise wird eine Schaltfläche in der Konfigurationsdatei deklariert, aber ihr benutzerdefiniertes Verhalten ist im zugehörigen Python-Skript definiert.
Sie können zusätzliche Ordner und Dateien im Ordner "Install" erstellen. Dies ist nützlich, wenn Sie Daten als Teil des Add-Ins bereitstellen möchten. Zu diesen Daten können Elemente wie Layer-Dateien, Toolboxes und XML-Dateien gehören. Um auf die Daten im Installationsverzeichnis zuzugreifen, nutzen Sie die integrierte __file__-Funktion. Dieses Beispiel zeigt, wie Sie auf eine Layer-Datei in einem Datenordner, der sich im Installationsordner befindet, zugreifen.
eq_layer = os.path.join(os.path.dirname(__file__), r'data\earth_quakes.lyr')
Die meisten der deklarierten Add-In-Typen sind mit Grafiken verknüpft. Alle über den Assistenten eingegebenen Grafiken werden in der Konfigurationsdatei referenziert und in den Ordner "Images" im Stammverzeichnis des Archivs kopiert.
Die folgende Abbildung veranschaulicht die Datei- und Ordnerstruktur einer Add-In-Datei (.esriaddin):
makeaddin.py
Die Python-Datei makeaddin.py ist ein Dienstprogrammskript, das vom Python Add-In-Assistenten erstellt wird und zum Verpacken der Dateien und Ordner im Projektordner in eine komprimierte Add-In-Datei dient. Doppelklicken Sie auf diese Datei, um die Add-In-Datei zu erstellen. Immer wenn Sie Änderungen am Add-In vornehmen, müssen Sie dieses Skript ausführen, um die Add-In-Datei mit den neuesten Aktualisierungen erneut zu verpacken.
Bekannte Ordnerverzeichnisse
Add-Ins werden automatisch erkannt, wenn ArcGIS Desktop in einem Benutzer- oder Desktop-spezifischen bekannten Ordner gestartet wird. Beispiele:
- Vista/7: C:\Benutzer\<Benutzername>\Dokumente\ArcGIS\AddIns\Desktop10.1
- XP: C:\Dokumente und Einstellungen\<Benutzername>\Eigene Dateien\ArcGIS\AddIns\Desktop10.1
Add-Ins werden über das ESRI ArcGIS Add-In-Installationsdienstprogramm und das Dialogfeld Add-In Manager automatisch hinzugefügt und entfernt. Im Dialogfeld Add-In-Manager in ArcGIS Desktop können Sie außerdem eigene bekannte Ordner hinzufügen, bei denen es sich auch um Netzwerkfreigaben handeln kann.
Zusätzlich entpacken die Add-Ins den Inhalt ihres Installationsordners automatisch in einen temporären Ordner. Beispiele:
- Vista/7: C:\Benutzer\<Benutzername>\AppData\Local\ESRI\Desktop10.1\AssemblyCache
- XP: C:\Dokumente und Einstellungen\<Benutzername>\Lokale Einstellungen\Anwendungsdaten\ESRI\Desktop10.1\AssemblyCache
Diese Daten werden automatisch vom Add-In-Framework entfernt, wenn erkannt wird, dass das Add-In nicht mehr auf dem System installiert ist.