[英]Tkinter Toplevel Widget
def WhoisWin():
win1 = Toplevel()
win1.title("Whois")
win1.config(bg="black")
win1.geometry("300x300")
win1.resizable(0,0)
text = Text()
text1 = Text()
text1.config(width=15, height=1)
text1.config(bg="black", fg="white")
text1.pack()
def button1():
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.connect(("com.whois-servers.net", 43))
s.send(text1.get("1.0", END) + "\r\n")
response = ''
while True:
a = s.recv(4096)
response += a
if a == '':
break
s.close()
text.insert(END, response)
def clear():
text.delete("1.0", END)
text1.delete("1.0", END)
frame = Frame(win1)
frame.config(bg="black")
frame.pack(pady=10, padx=5)
b = Button(frame, text="Enter", width=10, height=2, command=button1)
b.config(fg="white", bg="black")
b.pack(side=LEFT, padx=5)
c = Button(frame, text="Clear", width=10, height=2, command=clear)
c.config(fg="white", bg="black")
c.pack(side=RIGHT, padx=5)
scrollbar = Scrollbar(win1)
scrollbar.pack(side=RIGHT, fill=Y)
text.config(width=35, height=15, bg="black", fg="white")
text.pack(side=LEFT, fill=Y)
scrollbar.config(command=text.yview)
text.config(yscrollcommand=scrollbar.set)
This is just a child window that will popup when you click on the menu, I don't get any errors, but Text and Tex1 is not visible on the child window, but when I run this code on its own root window it works just find, maybe the ident is messed up or something? 这只是一个子窗口,当您单击菜单时会弹出,我没有收到任何错误,但是Text和Tex1在子窗口上不可见,但是当我在自己的根窗口上运行此代码时,找到,也许是身份被弄乱了还是什么? Any help will be appreciated, Thanks. 任何帮助将不胜感激,谢谢。
You don't provide a parent for text
or text1
. 您没有为text
或text1
提供父项。 When you call Text()
you need to give it an argument like Text(win1)
or Text(frame)
so that Tkinter knows what to pack the Text widget on. 调用Text()
,需要给它一个参数,例如Text(win1)
或Text(frame)
以便Tkinter知道要在其上包装Text小部件。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.