我是新来的陌生人,认为我误解了一些东西。我不明白为什么这行不通。而且我不明白该错误信息。
#!/usr/bin/env python3
import urwid
def show_or_exit(key):
if key in ('q', 'Q'):
raise urwid.ExitMainLoop()
txt.set_text(repr(key))
txt = urwid.Text('FooBar')
fil = urwid.Filler(txt, valign='middle', height=('relative', 70))
box = urwid.LineBox(fil)
pad = urwid.Padding(box, align='center', width=('relative', 85))
loop = urwid.MainLoop(pad, unhandled_input=show_or_exit)
loop.run()
我也遇到过这样的问题,为了更好地了解正在发生的事情,您可能应该阅读有关小部件大小调整模式的文档部分。基本上,这与小部件呈现的工作方式有关,每个小部件取决于其“调整大小模式”而有所不同。这是关于Urwid的最棘手的事情之一,一旦您掌握了它,便可以提高工作效率。:)
这是您提供的代码的有效版本:
#!/usr/bin/env python3
import urwid
def show_or_exit(key):
if key in ('q', 'Q'):
raise urwid.ExitMainLoop()
txt.set_text(repr(key))
txt = urwid.Text('FooBar')
widget = urwid.LineBox(txt)
widget = urwid.Padding(widget, align='center', width=('relative', 85))
widget = urwid.Filler(widget, 'middle')
loop = urwid.MainLoop(widget, unhandled_input=show_or_exit)
loop.run()
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句