Цель этого виджета - убедить пользователя в том, что что-то происходит. Он может работать в одном из двух режимов:
В режиме determinate виджет показывает индикатор, который движется от начала до конца под управлением программы.
В режиме indeterminate виджет анимируется, чтобы пользователь поверил, что что-то происходит. В этом режиме индикатор перемещается вперед-назад между концами виджета.
В любом из этих режимов текущее положение индикатора имеет числовое значение. Вы можете задать значение maximum, а можете установить значение индикатора напрямую. Вы также можете указать, что значение индикатора перемещается на заданную величину каждый раз, когда проходит заданный интервал времени.
Чтобы создать новый виджет ttk.Progressbar в качестве дочернего виджета данного parent:
w = ttk.Progressbar(parent, option=value, ...)
Опции:
Таблица 54. Опции ttk.Progressbar
class_ |
Имя класса виджета. Оно может быть указано при создании виджета, но не может быть изменено позже. Для объяснения классов виджетов смотрите Раздел 27, "Стандартизация внешнего вида". |
cursor |
Курсор, который будет появляться при наведении мыши на виджет; см. Раздел 5.8, "Курсоры". |
length |
Размер виджета вдоль его продольной оси. |
maximum |
Максимальное значение индикатора; по умолчанию 100. |
mode |
Если ваша программа не может точно отобразить относительный прогресс, который должен показывать этот виджет, используйте mode='indeterminate'. В этом режиме прямоугольник перемещается вперед-назад между концами виджета, когда вы используете метод .start(). Если ваша программа имеет некоторый показатель относительного прогресса, используйте mode='determinate'. В этом режиме ваша программа может перемещать индикатор в заданную позицию вдоль трека виджета. |
orient |
Эта опция задает ориентацию: используйте orient=tk.HORIZONTAL или orient=tk.VERTICAL. |
style |
Стиль, который будет использоваться при рендеринге этого виджета; см. Раздел 49, "Использование и настройка стилей ttk". |
takefocus |
По умолчанию ttk.Progressbar не будет включен в обход фокуса; смотрите Раздел 53, "Фокус: маршрутизация ввода с клавиатуры". Чтобы добавить виджет в обход фокуса, используйте takefocus=True. |
variable |
Используйте эту опцию, чтобы связать управляющую переменную с виджетом, чтобы можно было получить или установить текущее значение индикатора. |
Методы ttk.Progressbar включают методы, описанные в Раздел 46, "Методы, общие для всех виджетов ttk", плюс:
.start([interval]).
Начинает перемещать индикатор каждые
intervalмиллисекунд; по умолчанию 50 мс. Каждый раз индикатор перемещается так, как если бы вы вызвали метод.step().
.step([delta]).
Этот метод увеличивает значение индикатора на
delta; по умолчанию приращение равно 1.0. В детерминированном режиме индикатор никогда не превысит значение опцииmaximum. В неопределенном режиме индикатор изменит направление и начнет обратный отсчет, как только достигнет максимального значения.
.stop()
Этот метод останавливает автоматический прогресс, который был запущен вызовом метода
.start().