我有刷新终端的问题。我正在使用python和curses模块。有随机名称生成器,它在启动程序中显示预定义文本旁边的生成名称。用户可以修改名称(添加/删除字符)。
哪里有问题?在屏幕开始时仅显示预定义的文本。输入生成的名称,但所有字符都是黑色,用户无法看到它。屏幕仅在修改名称时刷新,即用户添加新字母或删除最后一个字母。
我想在生成名称后刷新屏幕。
Algo :( GetStringName函数的一部分)
str = true_heroname #generated name
self.screen.move(y, x + len(str))
self.screen.refresh() #it should refresh screen after placing generated name
self.screen.addstr(y, x, prompt, pattr)
x += len(prompt)
while True:
self.screen.move(y, x + len(str))
self.screen.refresh()
####AND BELOW CODE TO ADD/REMOVE LETTERS###
此功能用于在主菜单中生成名称:
self.name = Global.IO.GetStringName("What's your name? ", noblank=True, pattr=c_yellow, iattr=c_Yellow)
#c_yellow and c_Yellow are predefinied colors
我希望描述和代码剪断清晰。
如何在输入生成的名称后进行自动刷新屏幕?