2016-03-27 10 views
0

Tkinterのテキストボックスウィジェットの値を、残りのコードで使用する文字列として保存しようとしています。しかし、私が入力機能を持っているたびに、コマンドを無視することに関してエラーが発生しているのは、functionCallでは不可能です。Python Tkinter Enter Button

class text(): 
    master = Tk() 
    def on_button(): 
     print() 
     t = Label(master, text="Enter Text ") 
     e1 = Text(master, width=50, height = 25) 
     e1.grid(row=0, column =1, rowspan=3, columnspan=4, padx=4, pady=4) 
     functionCall = Button(master, text='Enter', command=Return) 
     functionCall.grid(row=4, column=4) 
    var = StringVar() 
    def Return(self): 
     self.TempVar=self.Entry.get() 
     print(self.TempVar) 

残りのコードに挿入された文字列を接続しようとしています。このコンセプトは1行の入力ボックスで動作しますが、考え方はより大きなテキストボックスを持つことです。

+0

何が表示されていますか?エラーは、問題の内容を正確に示している可能性があります。 –

+0

'text(0)関数の中にルートウィンドウを作成しています - これはルートウィンドウを作成する唯一の場所ですか?' on_button '関数が呼び出されている –

+0

これは、ユーザーがテキストを挿入するためのポップアップウィンドウを作成する機能です。残りのコードは、すべてのキーを表示するカラーウィンドウに置くことによってウィンドウに入力されたものに基づいて関連付けられます num = ord(文字) stack.append(数値) インデックス+ len(名前): インデックスの文字列は、 = 1 @BryanOakleyエラーがタイプのオブジェクトです 'NoneTypeにはlen()がありません – Alyssia

答えて

1

あなたはそのようなものを試してみるべきです。 Textウィジェットには.getオプションを使用します。

from tkinter import* 
master = Tk() 
def on_button(): 
    print() 

def Return(): 
    TempVar=e1.get("1.0",END) 
    print(TempVar) 

t = Label(master, text="Enter Text ") 
t.grid(row=0, column =1, rowspan=3, columnspan=4, padx=4, pady=4) 
e1 = Text(master, width=50, height = 25) 
e1.grid(row=1, column =1, rowspan=3, columnspan=4, padx=4, pady=4) 
functionCall = Button(master, text='Enter', command=Return) 
functionCall.grid(row=4, column=4) 
+0

文字列内の長さの値に関して、それは認識できるでしょうか? – Alyssia

+0

あなたは_「あなたはそのようなものを試してください」と書いています。_ - _what_のように? "that"はその文で何を指していますか? –

+0

ああ、ああ。だから、 "あなたは次のコードのようなものを試してみてください..."のように? –

関連する問題