私は16文字の制限でエントリーを作ろうとしています。 は、これまでのところ、私はこのようなものがあります:Tkinter - validatecommand + backspace
import tkinter as tk
rt = tk.Tk()
def tr_input():
a = e['textbox']
b = a.get()
print(b)
if "\b" in b:
return True
if "\n" in b:
calculate()
elif len(b)>16:
return False
return True
e = { "textbox":tk.Entry(rt,validate = "all",validatecommand=tr_input) }
calculate()
は、エントリ内の数字上の計算を実行し、別のラベルに表示し
それは正常に動作し、後に入力されることから、更なる文字を防ぎます16番目。しかし、それはまた、バックスペースを介して文字が削除されることを防ぎ、私はそれをする方法を理解することができません。
誰も私がこれをどのように修正できるか知っていますか?
編集:具体的には、私は最後に押されたボタンを使用すると、任意のキーを検出する必要がないようにあなたが情報でvalidatecommand
パスを持つことができますバックスペース