ArcGIS Desktop

  • ArcGIS Pro
  • ArcMap

  • My Profile
  • Hilfe
  • Sign Out
ArcGIS Desktop

ArcGIS Online

Die Mapping-Plattform für Ihre Organisation

ArcGIS Desktop

Ein vollständiges professionelles GIS

ArcGIS Enterprise

GIS in Ihrem Unternehmen

ArcGIS Developers

Werkzeuge zum Erstellen standortbezogener Apps

ArcGIS Solutions

Kostenlose Karten- und App-Vorlagen für Ihre Branche

ArcGIS Marketplace

Rufen Sie Apps und Daten für Ihre Organisation ab.

  • Dokumentation
  • Support
Esri
  • Anmelden
user
  • Eigenes Profil
  • Abmelden

ArcMap

  • Startseite
  • Erste Schritte
  • Karte
  • Analysieren
  • Verwalten von Daten
  • Werkzeuge
  • Erweiterungen

Das pythonaddins-Modul

Das pythonaddins-Modul enthält Funktionen zur Unterstützung von Python-Add-Ins.

Hinweis:

Das pythonaddins-Modul kann nur innerhalb eines Python-Add-Ins verwendet werden. Es kann nicht in eigenständigen Skripten oder Skriptwerkzeugen für die Geoverarbeitung eingesetzt werden.

FunktionErläuterung

OpenDialog({title}, {multiple_selection}, {starting_location}, {button_caption}, {filter}, {filter_label})

Öffnet ein Dialogfeld zur Auswahl von einem oder mehreren GIS-Datasets. Diese Funktion gibt den vollständigen Pfad des ausgewählten Datasets zurück. Wenn mehrere Datasets ausgewählt sind, wird eine Liste der vollständigen Pfade zurückgegeben. Es gibt keine Filterung der Eingabe-Datasets (z. B. Filterung nach Point-Feature-Classes).

  • {title} – Der Titel des Dialogfelds.
  • {multiple_selection} – Gibt an, ob mehrere Elemente ausgewählt werden können. Standardmäßig "False".
  • {starting_location} – Der Pfad des Startverzeichnisses.
  • {button_caption} – Die für die Schaltfläche "Öffnen" zu verwendende Beschriftung.
  • {filter} – Ein aufrufbares Filterargument. Die aufrufbare Routine verwendet ein einzelnes Argument – einen Katalogpfad zum ausgewählten Element – und gibt je nachdem, ob das Element geöffnet werden kann oder nicht, "True" oder "False" zurück. Siehe Codebeispiel unten.
  • {filter_label} – Dieser Text wird im Dropdown-Feld Datentyp: des Dialogfelds angezeigt.

SaveDialog({title}, {name_text}, {starting_location}, {filter}, {filter_label})

Öffnet ein Dialogfeld zum Speichern der Daten. Diese Funktion gibt den vollständigen Pfad für das zu speichernde Dataset zurück.

  • {title} – Der Titel des Dialogfelds.
  • {name_text} – Der im Namenstextfeld des Dialogfelds angezeigte Dataset-Name.
  • {starting_location} – Der Pfad zum Startverzeichnis, wo die Daten gespeichert werden.
  • {filter} – Ein aufrufbares Filterargument. Die aufrufbare Routine akzeptiert ein einzelnes Argument – einen Katalogpfad zum ausgewählten Element – und gibt je nachdem, ob das Element gespeichert werden kann oder nicht, "True" oder "False" zurück. Siehe Codebeispiele unten.
  • {filter_label} – Dieser Text wird im Dropdown-Feld Datentyp: des Dialogfelds angezeigt.

GPToolDialog(toolbox, tool_name)

Öffnet das Dialogfeld eines Geoverarbeitungswerkzeugs.

  • toolbox – Der Speicherort dieser Toolbox.
  • tool_name – Der Name des Werkzeugs.

MessageBox(message, title, {mb_type})

Zeigt ein Meldungsfeld an. Diese Funktion gibt einen Zeichenfolgenwert entsprechend der gedrückten Meldungsschaltfläche zurück.

  • message– Die anzuzeigende Meldung.
  • title – Der Titel des Meldungsfeldes.
  • {mb_type} – Der Typ des anzuzeigenden Meldungsfeldes. Die Standardoption ist 0 (OK). Eine vollständige Liste der mb_type-Codes finden Sie in der Tabelle unten.

GetSelectedTOCLayerOrDataFrame()

Gibt den ausgewählten Layer oder Datenrahmen aus dem Inhaltsverzeichnis zurück.

GetSelectedCatalogWindowPath()

Gibt den vollständigen Pfad des ausgewählten Elements im Fenster Katalog zurück.

ProgressDialog()

Gibt ein ProgressDialog-Objekt zurück. Das Statusdialogfeld-Objekt wird automatisch eingeblendet, wenn Sie zum with-Block wechseln, und es wird ausgeblendet, wenn Sie ihn verlassen. Siehe Beispiel-Codeausschnitt unten.

Folgende Eigenschaften sind verfügbar:

Animation

Gültige Werte sind None, "Datei", "Spirale"

Beschreibung

Ausführliche Beschreibung

Titel

Titel des Dialogfelds

abgebrochen

Gibt "True" zurück, wenn die Schaltfläche "Abbrechen" aktiviert wird

canCancel

Aktiviert oder deaktiviert die Schaltfläche "Abbrechen"

Fortschritt

Zahl zwischen 1 und 100 zur Darstellung des Fortschritts der Leiste

mb_type-CodeMeldungsfeldtyp

0

Nur OK

1

OK/Abbrechen

2

Abbrechen/Wiederholen/Ignorieren

3

Ja/Nein/Abbrechen

4

Ja/Nein

5

Wiederholen/Abbrechen

6

Abbrechen/Erneut versuchen/Fortfahren

{mb_type}-Codes

Diese Add-In-Schaltfläche verwendet OpenDialog(), um einen Satz Layer-Dateien auszuwählen und die Layer zum ausgewählten Datenframe hinzuzufügen.

import arcpy
import pythonaddins

class AddLayers(object):
    def __init__(self):
        self.enabled = True
        self.checked = False
    def onClick(self):
        layer_files = pythonaddins.OpenDialog('Select Layers', True, r'C:\GISData', 'Add')
        mxd = arcpy.mapping.MapDocument('current')
        df = pythonaddins.GetSelectedTOCLayerOrDataFrame()
        if not isinstance(df, arcpy.mapping.Layer):
            for layer_file in layer_files:
                layer = arcpy.mapping.Layer(layer_file)
                arcpy.mapping.AddLayer(df, layer)
        else:
            pythonaddins.MessageBox('Select a data frame', 'INFO', 0)

Diese Add-In-Schaltfläche öffnet ein Geoverarbeitungswerkzeug.

import arcpy
import pythonaddins

class OpenGPTool(object):
    def __init__(self):
        self.enabled = True
        self.checked = False
    def onClick(self):
        pythonaddins.GPToolDialog(r'C:\MyTools\WaterStudy.tbx', 'GroundWaterYield')

Beispiel für das Statusdialogfeld: Testen Sie dies im Python-Fenster in ArcGIS for Desktop.

import pythonaddins
with pythonaddins.ProgressDialog as dialog:
    dialog.title = "Progress Dialog"
    dialog.description = "Copying a large feature class."
    dialog.animation = "File"
    for i in xrange(100):
        dialog.progress = i
        time.sleep(0.125)
        if dialog.cancelled:
            raise Exception("Ooops")

Lassen Sie nur das Öffnen von Textdateien zu.

import os
class MyValidator(object):
    def __str__(self):
        return "Text files(*.txt)"
    def __call__(self, filename):
        if os.path.isfile(filename) and filename.lower().endswith(".txt"):
            return True
        return False

filename = pythonaddins.OpenDialog(r"c:\files", filter=MyValidator())

ArcGIS Desktop

  • Startseite
  • Dokumentation
  • Support

ArcGIS

  • ArcGIS Online
  • ArcGIS Desktop
  • ArcGIS Enterprise
  • ArcGIS
  • ArcGIS Developer
  • ArcGIS Solutions
  • ArcGIS Marketplace

Über Esri

  • Über uns
  • Karriere
  • Esri Blog
  • User Conference
  • Developer Summit
Esri
Wir sind an Ihrer Meinung interessiert.
Copyright © 2021 Esri. | Datenschutz | Rechtliches