Python でいくつかのコードを書いていますが、エントリ ウィジェットのコンテンツを取得しようとすると問題が発生します。問題は、入力できる文字を制限したいので、特定の文字数 (この場合は 2) に達したときに Entry ウィジェットをクリアしようとしているのですが、最後に入力した文字を常に見逃しているようです。キャラクター。失われたキャラクターをプリントに追加して表示しました。
サンプルコードは次のとおりです。
from Tkinter import *
class sampleFrame:
def __init__(self, master):
self.__frame = Frame(master)
self.__frame.pack()
def get_frame(self):
return self.__frame
class sampleClass:
def __init__(self, master):
self.__aLabel = Label(master,text="aLabel", width=10)
self.__aLabel.pack(side=LEFT)
self.__aEntry = Entry (master, width=2)
self.__aEntry.bind('<Key>', lambda event: self.callback(event, self.__aEntry))
self.__aEntry.pack(side=LEFT)
def callback(self, event, widgetName):
self.__value = widgetName.get()+event.char
print self.__value
if len(self.__value)>2:
widgetName.delete(2,4)
root = Tk()
aSampleFrame = sampleFrame(root)
aSampleClass = sampleClass(aSampleFrame.get_frame())
root.mainloop()
どんな助けでも大歓迎です!
前もって感謝します