![](/img/trans.png)
[英]Receiveing input from Python's tkinter entry widget and displaying it in a label
[英]Tkinter in Python - Entry widget not displaying
我正在尝试使用.grid()函数在Label下显示条目窗口小部件; 但是,它根本没有出现。 这是我的代码:
#demonstrates how to use a class with Tkinter
from Tkinter import *
import tkMessageBox
class Application(Frame):
def __init__(self, master):
""" Initializes the Frame"""
Frame.__init__(self, master)
self.grid()
self.create_widgets()
def create_widgets(self):
self.previous_trans = Text(width = 100, height = 5, wrap = WORD)
self.previous_trans.grid(row = 0, column = 0, columnspan = 2)
self.items = Text(width = 50, height = 16, wrap = WORD)
self.items.grid(row = 1, column = 1, rowspan = 14, sticky = E)
self.additem = Label(text = "Add Item")
self.additem.grid(row = 1)
self.myentry = Entry(self)
self.myentry.grid(row = 2)
root = Tk();
root.title("Work In Progress")
app = Application(root)
root.mainloop();
原因是:
app
指定行或列,因此默认为0,0 self.previous_trans
指定父self.previous_trans
因此它默认为根窗口-与应用程序框架相同 self.previous_trans
明确地放在第0行,第0列中,这将覆盖标签 您需要为Application
内的所有小部件提供一个明确的self
父对象:
self.previous_trans = Text(self, ...)
self.items = Text(self, ...)
self.additem = Label(self, ...)
self.myentry = Entry(self, ...)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.