2017-06-09 15 views
0

私はPython 2.7でtkinterを使用します。私の問題は、変数をentry_numberに入力することに成功しないことです。関数は呼び出されますが、何も印刷されませんでした。関数のtkinterを取得

チェックボックスがオンになっているかどうかを確認するにはどうすればよいですか?

from tkinter import * 
from tkinter import Tk, StringVar, Label, Entry, Button 

def call(): 
    print (e) 

root = Tk() 
var1 = IntVar() 
c=Checkbutton(root, text="Bou ", variable=var1).grid(row=4, column=1) 
text = StringVar(root) 

button = Button(root, text='call', 
      command=call) 
entry_number = Entry(root) 
button.grid(column=8, row=20) 
entry_number.grid(column=6,row=4) 

e = entry_number.get() 

root.mainloop() 
+2

'' 'Tkinterのインポート*' '' '' 'のTkinterからの輸入のTk、STRINGVARから、Label、Entry、Button'''なぜ2回インポートするのか不明 –

答えて

3

問題は、UIを作成するときにただちにeを定義することです。この時点では、エントリはまだ空です。そのため、ボタンを押したときに表示されるのは空の文字列です。

代わりに、それはあなたがクリックするたびに更新されるので、関数の内部eの定義を置く:

def call(): 
    e = entry_number.get() 
    print (e) 
関連する問題