Уведомления

Группа в Telegram: @pythonsu
  • Начало
  • » GUI
  • » Tkinter привязка состояния виджета к функции [RSS Feed]

#1 Март 11, 2015 15:38:59

seeder
Зарегистрирован: 2015-03-04
Сообщения: 9
Репутация: +  0  -
Профиль   Отправить e-mail  

Tkinter привязка состояния виджета к функции

Есть 3 радиокнопки и поле с текстом. Нужно чтобы поле было доступно для редактирования только если выбрана 3 радиокнопка. Соответственно при любых других вариантах нужно чтобы поле было недоступно для редактирования. Как решить эту задачу?

Не нашел в документации ответа как это сделать, т.к. не нашел событие “изменение состояния виджета” в списке возможных событий для bind.

from tkinter import *
root = Tk()
Entry1 = Entry(root, width=15)
Entry1.insert(END, 'Третий')
Entry1.place(x=20, y=20)
Entry1.config(state=DISABLED)
rb = IntVar()
rbutton1=Radiobutton(root, text='Первый', variable=rb, value=1)
rbutton2=Radiobutton(root, text='Второй', variable=rb, value=2)
rbutton3=Radiobutton(root, text='Третий', variable=rb, value=3)
rbutton1.place(x=10, y=40)
rbutton2.place(x=10, y=60)
rbutton3.place(x=10, y=80)
rb.set(1)
root.mainloop()

Офлайн

#2 Март 11, 2015 16:14:16

Griffon
От: Ukrain, Zaporozhie
Зарегистрирован: 2009-03-04
Сообщения: 324
Репутация: +  11  -
Профиль   Отправить e-mail  

Tkinter привязка состояния виджета к функции

def callback(*args):
    print args
var = IntVar()
var.trace_variable("w", callback)



Отредактировано Griffon (Март 11, 2015 16:14:37)

Офлайн

#3 Март 12, 2015 08:52:59

seeder
Зарегистрирован: 2015-03-04
Сообщения: 9
Репутация: +  0  -
Профиль   Отправить e-mail  

Tkinter привязка состояния виджета к функции

Griffon
Спасибо за помощь!!!
Теперь знаю про trace_variable

Офлайн

  • Начало
  • » GUI
  • » Tkinter привязка состояния виджета к функции[RSS Feed]

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version