zoukankan      html  css  js  c++  java
  • Entry的验证

    Entry组件是支持验证输入的合法性的,

    比如要求输入数字,你输入了字母就是非法。

    实现该功能,需要通过设置validate,validatecommand,invalidcommand选项。

    1、首先,启用验证开关validate,可以设置为:

    'focus':组件获得或者失去焦点时验证

    'focusin':组件获得焦点时验证

    'focusout':组件失去焦点时验证

    'key':输入框被编辑的时候验证

    'all':当出现上面任意一种情况时验证

    'none':关闭验证功能,默认是这个,注意不是逻辑的None,首字母小写。

    2、其次,为validatecommand选项验证函数,函数只能返回True或者False。

    3、然后,invalidcommand选项指定的函数只有validatecommand函数返回为False时才会触发。

    举例如下:

     1 #在第一个输入框输入小王并通过tab键将焦点转移到第二个输入框的时候,验证功能被成功触发。
     2 from tkinter import *
     3 
     4 master= Tk()
     5 def makesure():
     6     if e1.get()=='小王':
     7         print('哈喽,恭喜恭喜!')
     8         return True
     9     else:
    10         print('我晕,你是谁?!')
    11         e1.delete(0,END)#输入错误时,删除错误文本
    12         return False
    13 def sb():
    14     print('sb!')
    15 
    16 e1 = Entry(master,validate='focusout',
    17            validatecommand=makesure,invalidcommand=sb)
    18 e1.pack(padx=10,pady=10)
    19 
    20 e2 = Entry(master,show='*')
    21 e2.pack(padx=10,pady=10)
    22 
    23 mainloop()
  • 相关阅读:
    Notepad++快捷键
    NAT123内网映射端口
    Maven 导出依赖Jar,生成source.jar,javadoc.jar
    自定义javascript log方法
    AmazeUI定制
    模板框架
    jquery checkbox全选 获取值
    首页导航点击A连接跳转并添加上背景色,
    Controller中的方法利用ip跨域访问
    Datatable转成List
  • 原文地址:https://www.cnblogs.com/themost/p/6766966.html
Copyright © 2011-2022 走看看