Erro de inicialização do botão de opção Tkinter
Se eu colocar um botão de opção em uma função e desenhá-lo; Na primeira vez em que são desenhadas, você não pode passar o mouse sobre elas sem parecer que todas foram selecionadas.
O mesmo código de uma função não exibe esse comportamento.
from Tkinter import *
def App(master):
v = StringVar()
v.set('python') # initialize
lable1 = Label(master, text=' hovering over below radio buttons will cause them to look like they are selected')
lable1.pack()
runtimeFrame = Frame(master, relief=GROOVE, borderwidth = 3)
runtimeFrame.pack(fill = X, pady = 5, padx = 5)
for mode in ['java', 'python', 'jython']:
b = Radiobutton(runtimeFrame, text=mode, variable=v, value=mode, indicatoron = 1 )
b.pack(side = LEFT)
if __name__ == '__main__':
master = Tk()
App(master)
#The following code chunk is the same as that in App()
#------------------------
v = StringVar()
v.set('python') # initialize
lable1 = Label(master, text=' hovering over below radio buttons will cause them to Not look selected as expected')
lable1.pack()
runtimeFrame = Frame(master, relief=GROOVE, borderwidth = 3)
runtimeFrame.pack(fill = X, pady = 5, padx = 5)
for mode in ['java', 'python', 'jython']:
b = Radiobutton(runtimeFrame, text=mode, variable=v, value=mode, indicatoron = 1 )
b.pack(side = LEFT)
#------------------------
mainloop()
Depois de fazer uma seleção, isso não acontece novamente. Estou fazendo algo errado? Existe uma solução alternativa, porque meu código precisa estar em uma função!
Este é o segundo bug elementar que encontrei no Tkinter. Existe algo melhor para o desenvolvimento da GUI do Python?
ps: eu estou usando python 2.7