小伤口 发表于 2021-12-29 16:48:25

Daniel_Zhang 发表于 2021-12-29 16:45
谢谢,两种方法都很不错,但是楼上的大佬先来的,最佳只有一个名额

没事没事,我只是想名正言顺的白嫖一下鱼币{:9_227:}
谢谢

qq1151985918 发表于 2021-12-29 17:20:27

本帖最后由 qq1151985918 于 2021-12-29 17:21 编辑

Daniel_Zhang 发表于 2021-12-29 16:43
经过各位大佬的指点,搞出来了一个这样的东西:




或许重写一个Entry能解决你问题,试试吧
import tkinter as tk

class IntEntry(tk.Entry):

    def __init__(self, master=None, cnf={}, **kw):
      super().__init__()
      self.bind("<KeyRelease>", self._onlynum)
      
    def _onlynum(self, event):
      gettext = self.get()
      if event.keysym:
            if not gettext.isdigit():
                self.delete(0, "end")
                self.insert(0, "".join(i for i in gettext if i.isdigit()))

sunyt 发表于 2021-12-29 19:31:23

{:5_100:}

zhsguitar 发表于 2021-12-29 21:10:06

{:10_257:}

hellogood 发表于 2021-12-29 21:14:35

本帖最后由 hellogood 于 2021-12-29 21:15 编辑

{:5_108:}

hellogood 发表于 2021-12-29 21:16:20

{:10_257:}

ohhohh 发表于 2021-12-30 08:41:02

{:10_254:}

别吃我饼干 发表于 2021-12-30 16:50:35

{:10_261:}

别吃我饼干 发表于 2021-12-30 16:51:05

{:10_279:}

心驰神往 发表于 2021-12-31 08:13:05

{:10_254:}

hellogood 发表于 2021-12-31 08:39:54

{:5_108:}

hellogood 发表于 2021-12-31 08:40:55

{:5_108:}

hellogood 发表于 2021-12-31 08:41:42

{:5_108:}

小bai学c 发表于 2021-12-31 09:20:01

{:9_241:}

lightninng 发表于 2021-12-31 11:52:38

Daniel_Zhang 发表于 2021-12-29 16:43
经过各位大佬的指点,搞出来了一个这样的东西:




spinbox里面应该只能输入数字,这应该是最简单的方式,
当然像其他几个答主的代码那样,自己写代码判断是否未数字也可以,不过,写代码的目的不就是为了能用嘛,既然有现成的东西可用,干嘛要自己去造轮子~~~

tianlai7266 发表于 2021-12-31 23:04:31

{:10_254:}

何世昭 发表于 2022-1-1 09:18:22

{:5_109:}

别吃我饼干 发表于 2022-1-2 09:34:01

{:10_279:}

ridiculum 发表于 2022-1-8 07:58:14

{:10_279:}

ridiculum 发表于 2022-1-8 09:44:25

{:10_245:}
页: 1 [2] 3
查看完整版本: tkinter 限制只能输入数值