Текстовая метка Label

Поділитись

Текстовые метки в Python представлены элементом Label. Этот элемент позволяет выводить статический текст без возможности редактирования.

Для создания элемента Label применяется конструктор, который принимает два параметра:

1Label(master, options)

Параметр master представляет ссылку на родительский контейнер, а параметр options представляет следующие именованные параметры

  • anchor: устанавливает позиционирование текста
  • bg/background: фоновый цвет
  • bitmap: ссылка на изображение, которое отображается на метке
  • bd: толщина границы метки
  • fg/foreground: цвет текста
  • font: шрифт текста, например, font="Arial 14" – шрифт Arial высотой 14px
  • height: высота элемента
  • cursor: курсор указателя мыши при наведении на метку
  • image: ссылка на изображение, которое отображается на метке
  • justify: устанавливает выравнивание текста. Значение LEFT выравнивает текст по левому краю, CENTER – по центру, RIGHT – по правому краю
  • padx: отступ от границ элемента до его текста справа и слева
  • pady: отступ от границ элемента до его текста сверху и снизу
  • relief: определяет тип границы, по умолчанию значение FLAT
  • text: устанавливает текст метки
  • textvariable: устанавливает привязку к элементу StringVar
  • underline: указывает на номер символа в тексте кнопки, который подчеркивается. По умолчанию значение -1, то есть никакой символ не подчеркивается
  • width: ширина элемента
  • wraplength: при положительном значении строки текста будут переносится для вмещения в пространство элемента

Выведем в окне приложения простейший текст:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
from tkinter import *
 
root = Tk()
root.title("GUI на Python")
root.geometry("300x250")
 
label1 = Label(text="Hello Python", fg="#eee", bg="#333")
label1.pack()
 
poetry = "Вот мысль, которой весь я предан,\nИтог всего, что ум скопил.\nЛишь тот, кем бой за жизнь изведан,\nЖизнь и свободу заслужил."
label2 = Label(text=poetry, justify=LEFT)
label2.place(relx=.2, rely=.3)
 
root.mainloop()

Для переноса текста на другую строку можно использовать эскейп-последовательность \n.

Label в tkinter в Python

Поділитись