2016-11-30 4 views
-1

私はtkinterのエントリを終日変数に変えようとしていましたが、これのさまざまな側面を理解するために様々な質問をしました。なぜtkinterプログラムが変数に入り込まないのか分かりません

from tkinter import* 

top = Tk('Outfit Randomizer') 

#gender entry 
L1 = Label(top, text = 'What is your gender? Type 1 for male and 2 for female') 
L1.gride(row = 0, column = 0) 
g = StringVar() 
E1 = Entry(top, bd = 5, textvariable = g) 
E1.grid(row = 0, column = 1) 

#submit function 
def submit(): 
    g.get() 

#submit button 
MyButton1 = Button(top, text = 'Submit', width = 10, command = submit) 
MyButton1.grid(row = 3, column = 1) 

#carry out function 
gender = g.get() 
if gender == '1': 
    print('cool') 

top.mainloop() 

私はコーディングに新たなんだけど:私は私が今持っているコードは動作するはずですし、私はそれを実行したとき、私はエラーを受け取っていないが、それは私がそれを望むもの実行されないだろうと感じて、ここで私が持っているものです私はこれがうまくいかなければならない限り、エラーは表示されませんが、ウィンドウに1を入力すると何も印刷されません。私がこれをどのように修正できるか教えてください!

答えて

1

submit関数は入力値を取得しますが、絶対に何も行いません。 "クール"を印刷するコードは、メインループが入力される前に一度だけ呼び出されるので、まだ値が入力される可能性はありません。そのコードをsubmitの中に移動する必要があります。

関連する問題