我有一个python脚本,它创建一个打印到终端的框架和打印语句。如何将第1行打印到Tkinter框架。
import Tkinter as tk
class MainApp(tk.Frame):
def __init__(self, parent):
tk.Frame.__init__(self, parent)
self.parent = parent
print "line 1"
root = tk.Tk()
root.geometry("400x600")
app = MainApp(root)
app.pack(fill="both", expand=True)
root.mainloop()
答案 0 :(得分:0)
正如@Whatsthepoint建议您可能必须使用Label。我在下面发布了您修改过的代码。
import Tkinter as tk
class MainApp(tk.Frame):
def __init__(self, parent):
tk.Frame.__init__(self, parent)
self.parent = parent
self.label = tk.Label(parent, text = "line 1")
self.label.pack()
root = tk.Tk()
root.geometry("400x600")
app = MainApp(root)
app.pack(fill="both", expand=True)
root.mainloop()
EDIT -1 :如果您想要显示文本区域(不确定您想要的是什么)而不是标签,请选择其他选项。
self.text = tk.Text(parent)
self.text.insert(tk.END, " line 1")
self.text.pack()
EDIT-2 回答您在列表中显示值的问题。请注意,这只是列表中数字的简单显示。您需要根据需要自定义内容。
self.mylist = [1,2,3,4,5,6,7,8,9,10]
tk.Frame.__init__(self, parent)
self.parent = parent
for values in self.mylist:
self.label = tk.Label(parent, text=values)
self.label.pack()