Я следую учебному пособию здесь: http://resources.arcgis.com/en/help/main/10.1/index.html#/button/014p0000001z000000/

Я добавил код в файл .py и установил надстройку, используя файл makeaddin.py и файл Test001.esriaddin, когда я нажимаю кнопку в ArcMap, ничего не происходит. Предполагается увеличить масштаб до выбранных функций. У меня есть ArcMap 10.2 и указано в мастере надстроек Python, предоставленном ESRI. Заранее благодарим за любую помощь, которую вы можете предложить в этом вопросе. Вот код:

import arcpy
import pythonaddins

    class ZoomToSelectedFeatures(object):
        """Implementation for Test001_addin.btn1 (Button)"""
        def __init__(self):
            self.enabled = True
            self.checked = False
           # Implementation of OnClick method of Button's class
           def onClick(self):
                # Get the current map document and the first data frame.
                mxd = arcpy.mapping.MapDocument('current')
                df = arcpy.mapping.ListDataFrames(mxd)[0]
                # Call the zoomToSelectedFeatures() method of the data frame class
                df.zoomToSelectedFeatures()

Вот Это Да! это не позволит мне публиковать изображения, если у меня нет 10 репутации ...

1 ответ1

0

Я думаю, вам нужно исправить свой отступ для метода onClick.

class ZoomToSelectedFeatures(object):
    """Implementation for Test001_addin.btn1 (Button)"""
    def __init__(self):
        self.enabled = True
        self.checked = False
        # Implementation of OnClick method of Button's class
    def onClick(self):
        # Get the current map document and the first data frame.
        mxd = arcpy.mapping.MapDocument('current')
        df = arcpy.mapping.ListDataFrames(mxd)[0]
        # Call the zoomToSelectedFeatures() method of the data frame class
        df.zoomToSelectedFeatures()

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .