Найти тему
SamAlex

Tkinter часть 6. Метод grid().

Здравствуйте подписчики, и гости моего канала. Продолжаю изучать модуль Tkinter для создания графического интерфейса с помощью языка программирования Python.

Предыдущие части:

Tkinter часть 1 начало;

Tkinter часть 2 Button кнопки;

Tkinter часть 3 Label метка;

Tkinter часть 4 Entry однострочное текстовое поле;

Tkinter часть 5 Упаковщик pack().

Python Tkinter
Python Tkinter

Сегодня разберем второй метод из трех методов размещения виджетов в пространстве, метод «grid()» - (сетка, таблица). Табличный способ размещения более удобный, чем метод pack(), который ранее мы уже использовали. Он позволяет создать более сложный интерфейс и при этом не использовать много фреймов frame(). При использовании метода grid() окно, как бы разделяется на строки и столбцы. Полученные условные ячейки имеют свой адрес, состоящий из номера строки и номера столбца.

Условные ячейки метода grid()
Условные ячейки метода grid()

Специально разбивать на ячейки окно программы не надо, Tkinter автоматически подберет необходимое количество строк и столбцов исходя из указанных адресов ячеек для размещения виджета. Адрес ячейки задается аргументами «row» и «column» которым присваиваются номер строки и номер столбца. Для наглядности создадим четыре кнопки «Button» разных цветов и передадим первой кнопке адрес размещения (0, 0), второй (1, 1), третьей (2, 2) и четвертой (3, 3).

Размещение кнопок. Метод grid().
Размещение кнопок. Метод grid().

Передадим другие адреса нашим кнопкам

Размещение кнопок. Метод grid().
Размещение кнопок. Метод grid().

При необходимости ячейки можно объединять, как по горизонтали так и по вертикале. Для объединения ячеек по горизонтали атрибуту «columnspan» передают количество объединяемых ячеек, а для объединения по вертикали используют атрибут «rowspan». Это может понадобиться для размещения большого виджета, например «Entry» однострочного текстового поля. Рассмотрим пример на наших кнопках. Если первой и второй кнопке передадим одинаковые адреса, то вторая кнопка закроет собой первую.

Одна кнопку закрывает другую.
Одна кнопку закрывает другую.

Объединим несколько ячеек по горизонтали. И посмотрим результат.

Объединили ячейки.
Объединили ячейки.

Теперь в одной ячейки по адресу (0, 0) размещены сразу две кнопки.

Более подробнее остальные свойства метода «grid()» будем рассматривать в процессе дальнейшей работы с графическим модулем Tkinter.

А на этом все.

Спасибо за внимание.

Продолжение следует:

Tkinter часть 7 Метод - place ();

Tkinter часть 8 Canvas метод creat_line();

Tkinter. Часть 9. Canvas метод creat_polygon и метод creat_rectangle.

Всегда актуальное МЕНЮ моего канала находится ТУТ!!!

Наука
7 млн интересуются