如何解决我无法在 npyscreen 中使用 safe_to_exit 方法
我想我遗漏了一些非常基本的东西,但我无法使这个功能工作。
我正在使用 npyscreen 4.10.5 在 Redhat 上运行 python 3.6.12。我的期望是 safe_to_exit 函数可用于在用户退出该字段时立即验证任何输入(使用 Tab 键),但我根本无法触发它。可能我完全误解了这一点。这是我的测试代码,尽量简化:
import npyscreen
def test1(*args):
F = npyscreen.Form(name='My Test Application')
Field1 = F.add(npyscreen.TitleText,name="My Test Field")
Field1.safe_to_exit = Field1_Validations
F.edit()
return Field1.value
def Field1_Validations():
npyscreen.notify_confirm("Safe to exit")
return True
if __name__ == '__main__':
onefield = npyscreen.wrapper_basic(test1)
print("Results are : {} ".format(onefield))
任何指针将不胜感激。
解决方法
我仍在挖掘,但我发现似乎没有在所有小部件上实现 safe_to_exit。将小部件从“TitleText”更改为“Textfield”会导致验证代码触发。
,拉了很多头发之后我就解决了。它们的语法是(适用于上面的代码示例):
self.Field1.entry_widget.safe_to_exit = Field1_Validations
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。