2016-08-17 1 views
-1

tkinter에서 응용 프로그램을 만들고 있는데 어떤 이유로 텍스트 객체에서 'get()'함수를 호출 할 수 없습니다.() 클래스 : 오류가 발생합니다.tkinter (python 3.5)의 Text() 객체에서 get()을 할 수 없습니다.

AttributeError: 'NoneType' object has no attribute 'get' 

무엇이 잘못 되었나요? 어떤 도움

1 import tkinter 
    2 
    3 
    4 class Main(): 
    5 
    6  def __init__(self): 
    7   #Defining Variables: 
    8 
    9   background_color = '#%02x%02x%02x' % (223,219,195) 
10   menubar_color = '#%02x%02x%02x' % (191, 167, 126) 
11   menubar_active = '#AB936A' 
12 
13   #Creating Window: 
14   root = tkinter.Tk() 
15   root.geometry('1000x600') 
16   root.configure(background=background_color) 
17 
18   #Menu: 
19   menubar = tkinter.Menu(root,bg=menubar_color,activebackground=menuba r_active,borderwidth=0,font='quicksand.otf') 
20   menubar.add_command(label='Open',command=self.open_file) 
21   menubar.add_cascade(label='Save') 
22   menubar.add_cascade(label='Save As') 
23   menubar.add_cascade(label='New File') 
24 
25   root.config(menu=menubar) 
26 
27   #TextEntry Box: 
28   self.textinput = tkinter.Text().grid(row=0,column=0) 
29   root.mainloop() 
30 
31  def open_file(self): 
32   text = self.textinput.get() 
33   print(text) 
34 
35 if __name__ == '__main__': 
36  Main() 

감사 : 다음은 내 코드입니다!

+0

'tkinter.Text() .grid (row = 0, column = 0)''.grid()'메소드는'None'을 리턴하므로' self.textinput = tkinter.Text(); self.textinput.grid (...)' –

답변

0

Nevermind! 나는 그것을 알아 냈다. 대신

textinput = tkinter.Text().grid(row=0,column=0) 

말을 한 줄의 나는

self.textinput = tkinter.Text() 
self.textinput.grid(row=0,column=0) 

대신의

self.textinput.get() 
내가

을 사용

말을 두 라인으로 설정되어

self.textinput.get('1.0','end-1c') 
관련 문제