![](/img/trans.png)
[英]How do I make a tkinter message disappear if the entry in Tkinter Widget has been corrected?
[英]How do I make a tkinter entry widget?
这是我的代码:
import random
from tkinter import *
root=Tk()
a=Canvas(root, width=1000, height=1000)
a.pack()
e = Entry(root)
paralist = []
x=random.randint(1,10)
file = open("groupproject.txt")
line = file.readline()
for line in file:
paralist.append(line.replace("\n", ""));
a.create_text(500,50, text = "Typing Fun", width = 700, font = "Verdana", fill = "purple")
a.create_text(500,300, text = paralist[x], width = 700, font = "Times", fill = "purple")
#master = Tk()
#a = Entry(master)
#a.pack()
#a.focus_set()
#def callback():
# print (a.get())
root.mainloop()
带注释的部分应该在段落下打印一个条目小部件,但会出现错误IndexError: list index out of range
a.create_text(500,300, text = paralist[x], width = 700, font = "Times", fill = "purple")
。 如果我使用e
,而不是a
它的工作原理,但在打开一个单独的窗口中输入小工具。
我试图使tkinter条目小部件与文本显示在同一窗口中。 有人可以告诉我该怎么做吗?
首先,
paralist = []
列表为空,因此1到10之间的随机单词将是错误的,因为列表中没有任何内容。
master = Tk() # since Tk() is already assigned to root this will make a new window
a = Entry(master) # a is already assigned to canvas
a.pack() # this is already declare under a=canvas
a.focus_set()
def callback():
print (a.get())
编辑:
我怀疑您的文件可能是问题。 这段代码:
import random
from tkinter import *
root = Tk()
a = Canvas(root, width = 400, height = 400)
a.pack()
e = Entry(root)
e.pack()
paralist = []
x = random.randint(1,10)
file = open("teste.txt")
line = file.readline()
for line in file:
paralist.append(line.replace("\n", ""));
a.create_text(200,50, text = "Typing Fun", width = 700, font = "Verdana", fill = "purple")
a.create_text(200,300, text = paralist[x], width = 700, font = "Times", fill = "purple")
b = Entry(root)
b.pack()
b.focus_set()
def callback():
print (a.get())
root.mainloop()
以此为“ teste.txt”:
test0
test1
test2
test3
test4
test5
test6
test7
test8
test9
test10
对我来说很好。
import tkinter
window = tkinter. Tk()
window.geometry('200x200')
ent= tkinter.Entry(window)
ent.pack()
这是在tkinter中最简单的方法。 如果您还需要其他东西,请问我:)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.