joelau 发表于 2020-6-12 17:22:06

关于Tkinter Entry模块的问题

各位大佬小弟有个问题要请教下,就是我用tkinter的Entry来获取我输入的字符。能否有方法让我们输入的空格直接不读取并且不显示在Entry上面吗
很急很急各位有思路就进来说说吧谢谢啦

Twilight6 发表于 2020-6-12 17:26:04

用验证呗,设置每次输入时候验证

wuguiyou888 发表于 2020-6-12 18:15:29

Entry有一個驗證功能 可以驗證每一次輸入的字符

joelau 发表于 2020-6-12 22:21:25

Twilight6 发表于 2020-6-12 17:26
用验证呗,设置每次输入时候验证

哪个验证兄弟

Twilight6 发表于 2020-6-12 22:24:38

joelau 发表于 2020-6-12 22:21
哪个验证兄弟

validate 参数 设置为 'key' 就是输入时候验证 会自动调用 command 里面的函数

等下我写个模板给你

joelau 发表于 2020-6-12 23:55:55

Twilight6 发表于 2020-6-12 22:24
validate 参数 设置为 'key' 就是输入时候验证 会自动调用 command 里面的函数

等下我写个模板给你

谢了兄弟因为这个问题被组员问了好久都没有解决的方法

Twilight6 发表于 2020-6-13 01:24:49

joelau 发表于 2020-6-12 23:55
谢了兄弟因为这个问题被组员问了好久都没有解决的方法

类似这样的但是我没搞明白为什么只能验证一次

from tkinter import *

master = Tk()

def test():
    if ' ' in e1.get():
      return False
    return True

def space():
    text = e1.get().replace(' ','')
    e1.delete(0,END)
    e1.insert(0,text)
    return True


v = StringVar()

e1 = Entry(master, textvariable=v, validate="key", validatecommand=test,invalidcommand=space)

e1.pack(padx=10, pady=10)


mainloop()

joelau 发表于 2020-6-16 19:37:51

Twilight6 发表于 2020-6-13 01:24
类似这样的但是我没搞明白为什么只能验证一次

重新试过了也只是可以验证一次不过帮助很大了谢了xd

Twilight6 发表于 2020-6-16 19:38:51

joelau 发表于 2020-6-16 19:37
重新试过了也只是可以验证一次不过帮助很大了谢了xd

{:5_109:} 如果你什么时候研究出来为什么只验证一次 一定回来教教我哈
页: [1]
查看完整版本: 关于Tkinter Entry模块的问题