我正在创建一个小型urwid
应用供我使用,结构为Filler
,其中Pile
由多个Text
字段组成,后跟{Divider
1}},Edit
,另一个Divier
,最后是Text
:
Text1
Text2
Text3
Divide
>> Edit
Divide
Textout
现在,我想将Text1 .. Text3
替换为其他Text
字段,其确切数量会有所不同。我想我应该重绘整个用户界面,但我对draw_screen()
我的课程:
class main_ui(urwid.Filler):
def __init__(self):
self.body = welcom()
self.options = self.body.options
self.replay = self.body.replay
self.ask = self.body.ask
super(main_ui,self).__init__(self.body.pile,valign='top')
def paint(self):
super(main_ii,self).__init__(urwid.pile[urwid.Text('test')])
welcom()
函数生成上述字段,options
为dict
,其中包含我需要的信息
我像这样运行循环
def refresh(_loop,_data):
m.new_point()
_loop.draw_screen()
_loop.set_alarm_in(2,refresh)
m = main_ui()
loop = urwid.MainLoop(m)
loop.set_alarm_in(2,refresh)
loop.run()
如何更新我的用户?