Найти в Дзене
programmer's notes (python and more)

Программирование на языке Python. Библиотека tkinter, переключатели, радиокнопки, ярлыки

Доброго времени суток, читатели, зрители моего канала programmer's notes. Не забывайте подписываться и писать свои комментарии к моим статьям и видео.

Элементы Radiobutton, Checkbutton, Label на tkinter

Продолжаем работу с tkinter. Сегодня новые элементы и новые приёмы работы с ними. Будут рассмотрены элементы: радиокнопки (radiobutton), переключатели (checkbutton), ярлыки (label).

В программе ниже (рисунок 1) создаётся окно с тремя видами элементов. Рассматриваются принципы обработки событий: отображается состояние переключателя и вы бор радиокнопки.

Рисунок 1. Программа с радиокнопками, ярлыками и переключателями. Текст программы см. ниже по ссылке
Рисунок 1. Программа с радиокнопками, ярлыками и переключателями. Текст программы см. ниже по ссылке
primer353.py

Пояснения к программе, представленной на рисунке 1

  • При создании переключателя (Checkbutton) указывается обработчик изменения его состояния (self.chch). Важен параметр variable. С помощью него указывается переменная, которой каждый раз будет присваиваться состояние переключателя. Тут важно указать переменную, определяемую через метод tk.IntVar(). И далее метод get() позволяет получать это состояния в виде 0 или 1. В программе это состояние потом отображается в элементе Label (self.lb) - Label.config().
  • Радиокнопки создаются методом tk.Radiobutton(). При этом для каждой кнопки указывается значение: value='Красный' и т.п. И как в случае переключателя задаётся переменная: variable=self.v1. Для всех радиокнопок указывается одна и та же переменная. Тип переменной на этот раз tk.StringVar(). Для всех переменных указывается один и тот же обработчик self.sb. При выборе радиокнопки для каждой задаётся цвет ярлыка: Label.config(bg='#ff0000') и.п.
Рисунок 2. Окно программы (см. Рисунок 1)
Рисунок 2. Окно программы (см. Рисунок 1)

Пока всё! Продолжение следует...

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

Конец света для программистов пока откладывается
Конец света для программистов пока откладывается