Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/290.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python如何在Tkinter中将值从输入字段复制到文本字段_Python_Tkinter - Fatal编程技术网

Python如何在Tkinter中将值从输入字段复制到文本字段

Python如何在Tkinter中将值从输入字段复制到文本字段,python,tkinter,Python,Tkinter,我试图用Tkinker制作一个简单的GUI,当你按下一个按钮时,它会将输入字段中的值添加到文本字段的下一行 from tkinter import * #def onclick(): # pass class MyApp: def __init__(self): window=Tk() window.title('Multi Line Text Form') frame = Frame(window) frame.p

我试图用Tkinker制作一个简单的GUI,当你按下一个按钮时,它会将输入字段中的值添加到文本字段的下一行

from tkinter import *

#def onclick():
#   pass

class MyApp:
    def __init__(self):
        window=Tk()
        window.title('Multi Line Text Form')
        frame = Frame(window)
        frame.pack()
        #self.fields ={}

        l = Label(frame, text="Text to add below: ")
        l.grid(row=0, column = 0)
        #self.fields['name'] = Entry(frame)
        name = Entry(frame)
        #self.fields['name'].grid(row=0,column=1)
        name.grid(row=0,column=1)

        self.text = Text(frame, width=40, height=10)
        self.text.grid(row=3,column=1)
        self.text.insert(INSERT, "Hello.....")
        self.text.insert(END, "Bye Bye.....")

        msg = name.get()

        updatebtn = Button(frame, text="Update Text Box", command=self.writeToLog(name))
        updatebtn.grid(row=0, column=2)

        window.mainloop()


    def writeToLog(self, msg):
        print(msg)
        numlines = self.text.index('end - 1 line').split('.')[0]
        #text['state'] = 'normal'
        if numlines==4:
            self.text.delete(1.0, 2.0)
        if self.text.index('end-1c')!='1.0':
            self.text.insert('end', '\n')
        self.text.insert('end', msg)
        #text['state'] = 'disabled'


if __name__=="__main__":
    MyApp()

您的按钮需要配置要调用的函数的名称。然后,此函数可以从条目小部件获取值,并将其放入文本小部件中:

def __init__(self):
    ...
   updatebtn = Button(command=self.update_text)
   ...
   self.name_entry = Entry(frame)

def update_text(self):
    data = self.name_entry.get()
    self.writeToLog(data)

所以您的问题是什么?您是否阅读了有关文本和条目小部件的文档?您知道如何从小部件中获取数据吗?您知道如何将数据放入小部件中吗?问题的哪一部分需要帮助?在输入字段中输入一个值并单击按钮后,它不会显示在文本字段中。我不清楚如何将该值传递给writeToLog方法。当我点击按钮时,什么也没有发生。