Найти тему
SamAlex

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

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

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

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

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

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

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

Python Tkinter GUI
Python Tkinter GUI

Сегодня разберем один из трех методов размещения виджетов в пространстве, метод «Pack()» - упаковщик. Ранее мы его уже использовали для отображения наших виджетов в окне программы, но использовали без дополнительных параметров. И по умолчанию наши виджеты располагались друг под другом, в зависимости в какой последовательности был применен метод «pack()» к объектам. Для наглядности создадим четыре кнопки разных цветов и будем изменять параметры у метода «pack()» и наблюдать результат.

Кнопки разместились в порядке, в котором применяли к ним упаковщик.
Кнопки разместились в порядке, в котором применяли к ним упаковщик.

Как видно, что кнопки разместились в том порядке, в котором мы применяли к ним упаковщик.

У метода «pack()» есть параметр «side» - сторона, который может принимать одно из четырех значений. «TOP» - верх, «BOTTOM» - низ, «LEFT» - лево, «RIGHT» - право. По умолчанию значение «TOP». Для удобства упаковщики наших кнопок разместим в нормальной последовательности и передадим параметру «side» значение «LEFT».

Параметру «side» передали значение «LEFT»
Параметру «side» передали значение «LEFT»

Наши кнопки разместились горизонтально и прижались к левому краю. Если передать значение «RIGHT» то кнопки прижмутся к правому краю и отсчет пойдет с права налево.

Параметру «side» передали значение «RIGHT»
Параметру «side» передали значение «RIGHT»

Установим разные значения нашим кнопкам.

Когда надо более точную структуру размещения виджетов в пространстве окна, например, квадратный блок кнопок, тогда применяют вспомогательный виджет «Frame» - рамка. Фреймы размещают в окне, а во фреймах виджеты. Фрейм создают от класса «Frame». Создадим два фрейма «fr_1» и «fr_2», применим к ним метод «pack». И нашим кнопкам передадим параметр который отвечает где наши кнопки размещены. Для первой и второй «fr_1», а для третьей и четвертой «fr_2». До этого данный параметр не указывали, так как работали с одним окном. Вот результат.

Использование «Frame»
Использование «Frame»

Наши кнопки отобразились в виде блока.

Есть еще класс «LabelFrame» - фрейм с подписью. Переделаю наши фреймы на фреймы с подписью. Во фрейм созданный от класса «LabelFrame» кроме параметра «text» можно передавать цвет фона, цвет текста, шрифт и размер шрифта и другие параметры.

Использование «LabelFrame»
Использование «LabelFrame»

А на этом все.

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

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

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

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

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

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

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