| 46 | |
| 47 | # Reference: https://www.reddit.com/r/learnpython/comments/985umy/limit_user_input_to_only_int_with_tkinter/e4dj9k9?utm_source=share&utm_medium=web2x |
| 48 | class ConstrainedEntry(_tkinter.Entry): |
| 49 | def __init__(self, master=None, **kwargs): |
| 50 | self.var = _tkinter.StringVar() |
| 51 | self.regex = kwargs["regex"] |
| 52 | del kwargs["regex"] |
| 53 | _tkinter.Entry.__init__(self, master, textvariable=self.var, **kwargs) |
| 54 | self.old_value = '' |
| 55 | self.var.trace('w', self.check) |
| 56 | self.get, self.set = self.var.get, self.var.set |
| 57 | |
| 58 | def check(self, *args): |
| 59 | if re.search(self.regex, self.get()): |
| 60 | self.old_value = self.get() |
| 61 | else: |
| 62 | self.set(self.old_value) |
| 63 | |
| 64 | try: |
| 65 | window = _tkinter.Tk() |
no outgoing calls
no test coverage detected
searching dependent graphs…