Главная


39. ttk.Progressbar

Цель этого виджета - убедить пользователя в том, что что-то происходит. Он может работать в одном из двух режимов:

В любом из этих режимов текущее положение индикатора имеет числовое значение. Вы можете задать значение 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().


40. ttk.Radiobutton