gpt4 book ai didi

python - 如何在一小段延迟后逐个打印字符

转载 作者:行者123 更新时间:2023-12-01 07:07:10 25 4
gpt4 key购买 nike

这个程序在延迟 0.5 后打印整个字符串。我想在延迟 0.5 后打印每个字符。如何做。请帮助我。这个程序在延迟后打印整个单词

import tkinter as tk
import time
class tab:
i=0
def __init__(self,master):
self.input=tk.Entry(master,text="Input")
self.input.grid(column=1,row=1)
self.button=tk.Button(master,text="Click me!",command=self.printt)
self.button.grid(column=1,row=2)
self.label=tk.Label(master,text="")
self.label.grid(column=1,row=3)
def printt(self):
try:
t=str(self.input.get())
tab.i=0
while(tab.i< len(t)):
self.label['text']=self.label['text'] + t[tab.i]
time.sleep(0.5)
tab.i = tab.i + 1

except ValueError:
self.label['text']="Error"
return



root=tk.Tk()
tab(root)
root.geometry('300x400')
root.mainloop()

最佳答案

我从 python 邮件列表中得到了这段代码。 friend 们感谢您的支持和帮助

import tkinter as tk

class App(tk.Tk):
def __init__(self,*args, **kwargs):
tk.Tk.__init__(self, *args, **kwargs)
self.label = tk.Label(self, text="", width=20, anchor="w")
self.label.pack(side="top",fill="both",expand=True)
self.print_label_slowly("Hello, world!")

def print_label_slowly(self, message):
'''Print a label one character at a time using the event loop'''
t = self.label.cget("text")
t += message[0]
self.label.config(text=t)
if len(message) > 1:
self.after(500, self.print_label_slowly, message[1:])

app = App()
app.mainloop()

关于python - 如何在一小段延迟后逐个打印字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58389557/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com