0
これは、ボタンを押すとラジオボタンを生成するボタンに由来します。私はラジオボタンで作られた選択肢にアクセスすることができません。すべて正常に動作しますが、選択した関数の出力はゼロです。私はローカルとグローバルの両方のvarを使用してみますが、結果は同じです。Python tkinter RadioButtonコールバック関数
def callback_st(): # RadioButton select technology
var = IntVar()
m=0
for m in range(len(un_tech)):
Radiobutton(radio_frame, text=un_tech[m], value=m, variable=var,
command=selected(var)).pack(anchor=W)
def selected(var):
print(var)
これは機能しません。私は、ラムダを使用して解決:
def selected(jst):
global sel_technology
sel_technology=un_tech[jst]
print(sel_technology)
def callback_st(): #RadioButton select technology
var_st = IntVar()
m=0
for m in range(len(un_tech)):
Radiobutton(radio_frame, text=un_tech[m], value=m, variable=var_st,
command = lambda jst=m: selected(jst)).pack(anchor=W)
私が望むように、これは動作しますが、それは私が欲しいと私は正しい方法ではないと思いソリューションではありません。だから、誰かが正しい方法を見つけるのを助けることができますか?あなたの最初の試みで
ローカル変数とグローバル変数の概念に精通していますか? 'var'はローカル変数です。 –