python addins中下拉列表的值如何传给其他对象?

python addins中下拉列表的值如何传给其他对象?如按钮button如何获取到combobox中当前选择的item?
已邀请:

刘峥 - ArcGIS多面手

赞同来自:

【解决办法】:
可以通过下拉列表的onSelChange事件更新一个global变量,button去读取global变量的值,如:
class Layers(object):
Implementation for Test_addin.combobox_1 (ComboBox)
def __init__(self):
self.items = [item1, item2]
self.editable = True
self.enabled = True
self.dropdownWidth = ''WWWWWW''
self.width = ''WWWWWW''
def onSelChange(self, selection):
self.mxd = arcpy.mapping.MapDocument(''current'')
layers = arcpy.mapping.ListLayers(self.mxd)
for layer in layers:
if layer.name==str(selection):
global FIELDNAMES
FIELDNAMES=
fieldList = arcpy.ListFields(layer)
for fields in fieldList:
FIELDNAMES.append(fields.name)
global selectedly
selectedly = arcpy.mapping.ListLayers(self.mxd, selection)[0]
pass
def onEditChange(self, text):
pass
def onFocus(self, focused):
self.mxd = arcpy.mapping.MapDocument(''current'')
layers = arcpy.mapping.ListLayers(self.mxd)
self.items =
for layer in layers:
self.items.append(layer.name)
pass
def onEnter(self):
pass
def refresh(self):
pass


要回复问题请先登录注册