参数控件

所有地理处理参数都附带一个默认控件。 这是地理处理窗格中参数的默认外观。 控件反映了数据类型以及参数是否接受一个或多个值。 地理处理框架支持有限数量的控件,用于修改地理处理窗格中显示的控件。

在脚本工具或 Python 工具箱工具中,可以使用 Parameter 对象的 controlCLSID 属性覆盖默认控件。

在脚本工具中,与大多数其他参数属性不同,控件无法通过工具属性对话框进行修改,必须在验证代码中进行设置。 在工具 ToolValidator 类的 __init__ 方法中设置 controlCLSID

    
def __init__(self):
    self.params = arcpy.GetParameterInfo()
    self.params[1].controlCLSID = '{15F0D1C1-F783-49BC-8D16-619B8E92F668}'

Python 工具箱中,在工具类的 getParameterInfo 方法中定义参数后设置 controlCLSID


extent = arcpy.Parameter(
    displayName='Extent',
    name='Extent',
    datatype='GPExtent',
    parameterType='Required',
    direction='Input')
extent.controlCLSID = '{15F0D1C1-F783-49BC-8D16-619B8E92F668}'

范围

范围数据类型的默认控件如下显示:

默认范围控件

使用值为 controlCLSID{15F0D1C1-F783-49BC-8D16-619B8E92F668} 将控件更改为以下各项。

{15F0D1C1-F783-49BC-8D16-619B8E92F668} 值为 controlCLSID 的范围控件

数值(长整型和双精度)

具有范围过滤器的长整型双精度数据类型的默认控件显示如下:

默认多值长整型控件

使用值为 controlCLSID{C8C46E43-3D27-4485-9B38-A49F3AC588D9} 将滑动条添加至参数。

{C8C46E43-3D27-4485-9B38-A49F3AC588D9} 的值为 controlCLSID 长整型多值控件

长整型双精度数据类型的默认控件显示如下:

默认长整型控件

对于左定向的较大文本框,使用值为 controlCLSID{7A47E79C-9734-4167-9698-BFB00F43AE41}

{C8C46E43-3D27-4485-9B38-A49F3AC588D9} 的值为 controlCLSID 长整型控件

复合

复合数据类型为用于组合至少两个数据类型的参数。 在以下示例中,复合数据类型由线性单位字段数据类型组成。 控件基于第一个数据类型,通常使得难以正确添加其他数据类型的值。

具有线性单位和字段数据类型的复合控件

使用值为 controlCLSID{BEDF969C-20D2-4C41-96DA-32408CA72BF6} 将控件更改为以下各项。 此控件提供一个选择列表,用于将控件从一个数据类型切换为另一个,从而简化为参数使用的任何数据类型提供值的过程。

具有线性单位和字段数据类型并且 {BEDF969C-20D2-4C41-96DA-32408CA72BF6} 的值为 controlCLSID 的复合控件

字符串

字符串数据类型通常用于支持一组关键字。 范围数据类型的默认控件如下显示:

默认字符串控件

要支持接受多行文本块的参数,使用值为 controlCLSID{E5456E51-0C41-4797-9EE4-5269820C6F0E}

{E5456E51-0C41-4797-9EE4-5269820C6F0E} 值为 controlCLSID 的字符串控件

多值

具有值列表过滤器的多值字符串字段长整型双精度数据类型的默认控件显示如下:

默认多值控件

要支持接受选项选择列表的参数,使用值为 controlCLSID{172840BF-D385-4F83-80E8-2AC3B79EB0E0}

{172840BF-D385-4F83-80E8-2AC3B79EB0E0} 值为 controlCLSID 的多值控件

同样,要创建接受选项选择列表的参数并包含全选按钮,使用值为 controlCLSID{38C34610-C7F7-11D5-A693-0008C711C8C1}

{38C34610-C7F7-11D5-A693-0008C711C8C1} 值为 controlCLSID 的多值控件

要素图层

要素图层数据类型的默认控件显示如下:

默认要素图层控件

要素图层数据类型支持要素类和要素图层作为输入。 要同时支持要素集,使用值为 controlCLSID{60061247-BCA8-473E-A7AF-A2026DDE1C2D}。 使用工具时,单击交互式输入按钮 编辑 以交互的方式为工具输入创建要素。

{60061247-BCA8-473E-A7AF-A2026DDE1C2D} 值为 controlCLSID 的要素图层控件

注:

使用要素集数据类型创建相同的效果。