Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/user-interface/2.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将内容打印到gui_Python_User Interface_Tkinter - Fatal编程技术网

Python 使用Tkinter将内容打印到gui

Python 使用Tkinter将内容打印到gui,python,user-interface,tkinter,Python,User Interface,Tkinter,制作了一个简单的程序,要求用户输入,但我想在gui上打印出来,而不是在shell的命令行上 import Tkinter class simpleapp_tk(Tkinter.Tk): def __init__(self,parent): Tkinter.Tk.__init__(self,parent) self.parent = parent self.initialize() def initialize(self

制作了一个简单的程序,要求用户输入,但我想在gui上打印出来,而不是在shell的命令行上

import Tkinter 

class simpleapp_tk(Tkinter.Tk):
    def __init__(self,parent):
        Tkinter.Tk.__init__(self,parent)
        self.parent = parent
        self.initialize()





    def initialize(self):
        self.grid()

        self.entry = Tkinter.Entry(self)
        self.entry.grid(column=0,row=1,sticky='EW')

        button = Tkinter.Button(self,text="Click me !", command = self.on_button)
        button.grid(column=1,row=1)

        label = Tkinter.Label(self,
                              text = "ns lookup")
        label.grid(column=0,row=0,columnspan=2,sticky='EW')


    def on_button(self):
        ns = (self.entry.get())
        print(ns)







if __name__ == "__main__":
    app = simpleapp_tk(None)
    app.title('my application')
    app.mainloop()

我还想知道是否可以清除结果,以便只显示当前结果,您可以传递标签,然后更改标签文本。或者,如果您不想更改此标签,请创建一个新标签。您可以使用画布,使用
创建_text
,如果您有很多要查看的文本,您可以使用文本小部件/滚动文本在那里插入文本,并使用各种其他方式“打印”Tk中的值

def initialize(self):

      self.grid()

      self.entry = Tkinter.Entry(self)
      self.entry.grid(column=0,row=1,sticky='EW')

      label = Tkinter.Label(self, text = "ns lookup")
      button = Tkinter.Button(self,text="Click me !", command = lambda: self.on_button(label))

      label.grid(column=0,row=0,columnspan=2,sticky='EW')
      button.grid(column=1,row=1)



def on_button(self, label):

    ns = self.entry.get()
    label['text'] = ns

或者,您可以将标签设置为类的属性,并调用
self.label
或任何其他可用选项。

只需保存对标签的引用,然后使用
配置
消息对其进行更改:

class simpleapp_tk(Tkinter.Tk):
    ...
    def initialize(self):
        ...
        self.label = Tkinter.Label(self, text = "ns lookup")
        ...


    def on_button(self):
        ns = (self.entry.get())
        self.label.configure(text="you entered: '%s'" % ns)