Такое поле создается вызовом класса Entry модуля tkinter. В него пользователь может ввести только одну строку текста.
ent = Entry(root,width=20,bd=3)
bd – это сокращение от borderwidth (ширина границы).
Многострочное текстовое поле
Text предназначен для предоставления пользователю возможности ввода не одной строки текста, а существенно больше.
tex = Text(root,width=40,
font="Verdana 12",
wrap=WORD)
Последнее свойство (wrap) в зависимости от своего значения позволяет переносить текст, вводимый пользователем либо по символам, либо по словам, либо вообще не переносить, пока пользователь не нажмет Enter.
Радиокнопки (переключатели)
Объект-радиокнопка никогда не используется по одному. Их используют группами, при этом в одной группе может быть «включена» лишь одна кнопка.
var=IntVar()
var.set(1)
rad0 = Radiobutton(root,text="Первая",
variable=var,value=0)
rad1 = Radiobutton(root,text="Вторая",
variable=var,value=1)
rad2 = Radiobutton(root,text="Третья",
variable=var,value=2)
Одна группа определяет значение одной переменной, т. е. если в примере будет выбрана радиокнопка rad2, то значение переменной будет var будет 2. Изначально также требуется установить значение переменной (выражение var.set(1) задает значение переменной var равное 1).
|
|
Флажки
Объект checkbutton предназначен для выбора не взаимоисключающих пунктов в окне (в группе можно активировать один, два или более флажков или не один). В отличие от радиокнопок, значение каждого флажка привязывается к своей переменной, значение которой определяется опциями onvalue (включено) и offvalue (выключено) в описании флажка.
c1 = IntVar()
c2 = IntVar()
che1 = Checkbutton(root,text="Первый флажок",
variable=c1,onvalue=1,offvalue=0)
che2 = Checkbutton(root,text="Второй флажок",
variable=c2,onvalue=2,offvalue=0)
Списки
Вызов класса Listbox создает объект, в котором пользователь может выбрать один или несколько пунктов в зависимости от значения опции selectmode. В примере ниже значение SINGLE позволяет выбирать лишь один пункт из списка.
r = ['Linux','Python','Tk','Tkinter']
lis = Listbox(root,selectmode=SINGLE,height=4)
for i in r:
lis.insert(END,i)
Изначально список (Listbox) пуст. С помощью цикла for в него добавляются пункты из списка (тип данных) r. Добавление происходит с помощью специального метода класса Listbox — insert. Данный метод принимает два параметра: куда добавить и что добавить.
Большинство методов различных виджет мы рассмотрим по ходу изучения данного курса.