2016-05-11 23 views
-1

私はPythonでTkinterを使って簡単なGUIプログラムを作っています。問題は、私はボタンを使用して、私のエントリから値を取得しようとすると、それはerror()に戻ってくるということです。Tkinter、エントリから値を取得する

print(ex1.get()) 
AttributeError: 'NoneType' object has no attribute 'get' 

これを避けるために、どのように?

これは私のコードです:

root = Tk() 

root.minsize(300,300) 
root.maxsize(300,300) 


n = ttk.Notebook() 

f1 = Frame(n,height=280,width=280) 
f1.propagate(0) 
lx1 = Label(f1,text="x",width=5).grid(row = 1,column=0) 
ex1 = Entry(f1,width = 10).grid(row = 1,column = 1) 

ly1 = Label(f1,text="y",width=5).grid(row=3,column=0) 
ey1 = Entry(f1,width = 10).grid(row=3,column = 1) 

def value(): 
    print(ex1.get()) 


Bcreate = Button(f1,text="CREATE",command=value).grid(row = 10,column = 5) 
n.add(f1,text="add point") 

f2 = Frame(n) 
n.add(f2,text="draw line") 


n.pack() 
+0

from tkinter import Tk, Entry root = Tk() ent = Entry(root) ent.pack() print(ent) print(ent.get()) 

を取得します。あなたが含めることができる他のコードはありますか?私は、輸入車がなければならないと思っています。また、 'ex1'のように、あなたが作ったさまざまなオブジェクトで' .pack() 'が必要であることを確かめてください。 – coralvanda

答えて

1

ここでは、適切なMCVE

を投稿する方法を読んでください、あなたの問題の一つです。

from tkinter import Tk, Entry 

root = Tk() 
ent = Entry(root).pack() 
print(ent) 
print(ent.get()) 

これは

None 
Traceback (most recent call last): 
    File "F:\Python\mypy\tem.py", line 6, in <module> 
    print(ent.get()) 
AttributeError: 'NoneType' object has no attribute 'get' 
を印刷します

この時点で、.pack()Noneを返すことは明らかです。代わりに、Entryから返されたウィジェットをバインドします。私はこれがすべてで何かを実行するようになった時間の一体を抱えている

.2425099144832 
got . 
関連する問題