Urwid を使用して小さなコンソール アプリケーションを作成しています。キー プレス イベントを処理するために、Urwid チュートリアル ( http://urwid.org/tutorial/を参照) で説明されているパターンを使用しました。
例えば
def on_unhandled_input(key):
elif key in ('n'):
create_new()
elif key in ('q'):
raise urwid.ExitMainLoop()
main_loop = urwid.MainLoop(layout, unhandled_input=on_unhandled_input)
main_loop.run()
私の問題は、unhandled_input がマウス クリックをキャプチャしているように見えることです。これにより、ハンドラーでエラーが発生します。
TypeError: 'in <string>' requires string as left operand, not tuple
キーの押下をフィルタリングしてマウスのクリックを破棄する最良の方法は何ですか?