Найти тему
programmer's notes (python and more)

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

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

Меню с помощью библиотеки tkinter на python

Очередной оконный элемент в библиотеке tkinter. Ну и как обычно убеждаемся в простоте tkinter.

Ниже (рисунок 1) представлена программа. В окне создаётся трёхуровневое меню: меню горизонтальное, выпадающее меню, и меню третьего уровня для одного из пунктов выпадающего меню (см. рисунки 2-5). Меню второго уровня Цвета позволяет менять цвет окна. Там же ниже меню третьего уровня Заголовки, которое позволяет менять заголовок окна. Также такое же меню вставлено в пункт горизонтального меню. Третий пункт горизонтального меню является просто командой выхода.

Рисунок 1. Пример программы с меню. Текст программы см. ниже по ссылке
Рисунок 1. Пример программы с меню. Текст программы см. ниже по ссылке
primer354.py

Пояснение к программе на рисунке 1

  • Все меню создаются с помощью одного и того же класса tk.Menu.
  • К созданному объекту-меню можно добавить команду: mn.add_command(label='Выход', command=self.destroy) - пункт-команда добавлена в горизонтальное меню. При этом label - название пункта, command - выполняемая команда (метод).
  • Можно также добавить пункт-подменю: mn.add_cascade(label='Цвета', menu=cl), при этом label - название, menu - указывает на объект-меню, которое будет открываться при выборе пункта.
  • Tk.config() - для привязки меню самого высокого уровня к окну.

Рисунок 2. Горизонтальное меню первого уровня
Рисунок 2. Горизонтальное меню первого уровня
Рисунок 3. Открытие меню второго уровня
Рисунок 3. Открытие меню второго уровня
Рисунок 4. Меню третьего уровня
Рисунок 4. Меню третьего уровня

Рисунок 5. Меню второго уровня
Рисунок 5. Меню второго уровня

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

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

- Вы уже ознакомились с нашим меню? - Нет, слишком много букв
- Вы уже ознакомились с нашим меню? - Нет, слишком много букв