Блог веб разработки

Блог веб-разработки статьи | видеообзоры | исходный код

tkinter создание окна

Всем привет. Продолжим изучение библиотеки tkinter в python которая позволяет писать нам графический интерфейс. Тема сегодняшней статьи работа с окнами программы.

Рассмотрим следующий код:

from tkinter import *
window = Tk()
window.mainloop()

Здесь мы создали главное окно программы. Заметьте что оно имеет определенные размеры и заголовок Tk.

Допустим мы хотим чтобы наше главное окно имело заголовок 'main' и размеры 400x400.

from tkinter import *
window = Tk()
window.title("main") #устанавливаем заголовок main
window.minsize(width=400,height=400) #устанавливаем ширину и высоту
window.mainloop()

Для этого в библиотеке tkinter существует метод title() который устанавливает заголовок и minize(), устанавливает ширину и высоту окна.

Для того чтобы окну задать определенный фон мы можем воспользоваться элементом frame:

frame = Frame(window, width=400,height=400,bg="green")
frame.pack()

здесь через класс Frame мы создали элемент frame.

В класс мы передали следующие аргументы:

window - объект главного окна

width и height - ширина и высота(совпадают с параметрами главного окна)

bg - цвет фона(green - зеленный)

В результате цвет фона нашего главного окна стал зеленым. Сам по себе виджет frame представляет собой рамки с помощью которых мы можем более гибко структурировать данные в окне.

Приведу пример:

from tkinter import *
window = Tk()
window.title("Главное окно")
window.minsize(width=400,height=400)

frame = Frame(window, width=400,height=100)
frame2 = Frame(window, width=200,height=50,bg="white")
frame3 = Frame(window, width=200,height=50,bg="blue")
frame4 = Frame(window, width=200,height=50,bg="red")

frame.pack()
frame2.pack()
frame3.pack()
frame4.pack()

window.mainloop()

Мы нарисовали флаг Российской Федерации в самом центре нашего главного окна используя виджет Frame. Помимо всего прочего мы можем в фрейм помещать другие элементы.

text = Text(frame2, width=25,height=2)
text.pack()

Например здесь мы текстовое поле поместили в frame2

И напоследок мы рассмотрим как создавать дополнительные(дочерние окна).

Дочерние окна создаются с помощью класса Toplevel которому передается в качестве аргумента объект главного окна.

children = Toplevel(window)
children.title("Дочернее окно")
children.minsize(width=400,height=200)

В данном примере мы создали дополнительное окно с размерами 400x200 и заголовком 'Дочернее окно'. Теперь мы можем обращаться и работать с ним через объект children. Отмечу что дочерних окон мы можем создавать сколько угодно.

Однако стоит помнить, что если мы закрываем наше главное окно, то все дочерние элементы закроются вместе с ним.

На этом данная статья подошла к концу. Надеюсь она была для вас полезной.

Желаю удачи и успехов! Пока!

Оцените статью

Еще статьи

Ссылки html

кодирование JavaScript

CSS flexbox

Коммиты GIT

Три полезных метода для работы с объектами в javaScript

JS filereader

screen javascript

selection css

Linux команды

Комментарии

В данном разделе пока нет комментариев!

История

    НОВОСТИ

    • Опубликовал приложение под android 'Аудиокниги'. Кому интересно, переходите по ссылке