SetProgressor (arcpy)

Резюме

Устанавливает объект прогрессор, который позволяет выдавать информацию о ходе процесса в окне диалога о ходе процесса. Вешний вид диалогового окна хода выполнения может контролироваться, выбирая или индикатор выполнения процесса по умолчанию, или пошаговый.

Синтаксис

SetProgressor (type, {message}, {min_range}, {max_range}, {step_value})
ПараметрОбъяснениеТип данных
type

Тип прогрессора (по умолчанию или пошаговый).

  • по умолчаниюПрогрессор постоянно перемещается вперед и назад.
  • шагПрогрессор показывает процент выполнения задания.

(Значение по умолчанию — default)

String
message

Подпись прогрессора. По умолчанию подписи нет.

String
min_range

Начальное значение для прогрессора. Значение по умолчанию равно 0.

(Значение по умолчанию — 0)

Integer
max_range

Конечное значение для прогрессора. Значение по умолчанию равно 100.

(Значение по умолчанию — 100)

Integer
step_value

Интервал шага прогрессора для обновления полосы хода процесса.

(Значение по умолчанию — 1)

Integer

Пример кода

Пример работы SetProgressor

Задать объект прогрессора для отображения хода процесса в соответствующем диалоговом окне.

import arcpy
from arcpy import env

# Allow overwriting of output 
# 
env.overwriteOutput = True
 
# Set current workspace 
# 
env.workspace = "c:/data" 

# Get a list of shapefiles in folder 
# 
fcs = arcpy.ListFeatureClasses() 

# Find the total count of shapefiles in list 
# 
fcCount = len(fcs) 

# Set the progressor 
#
arcpy.SetProgressor("step", "Copying shapefiles to geodatabase...", 0,fcCount, 1) 

# Create a file gdb to contain new feature classes 
#
arcpy.CreateFileGDB_management(env.workspace, "fgdb.gdb") 

# For each shapefile, copy to a file geodatabase 
# 
for shp in fcs: 
    # Trim the '.shp' extension 
    # 
    fc = shp.rstrip(".shp") 

    # Update the progressor label for current shapefile 
    # 
    arcpy.SetProgressorLabel("Loading " + shp + "...") 

    # Copy the data 
    # 
    arcpy.CopyFeatures_management(shp, "fgdb.gdb/" + fc) 
 
    # Update the progressor position 
    # 
    arcpy.SetProgressorPosition()

arcpy.ResetProgressor()

Связанные темы

9/10/2013