[英]How to bind multiple keyboard buttons to a widget in Tkinter Python
我正在嘗試制作一個最簡單的計算器,我想用鍵盤操作它。 這是文件。
我希望每當我按下任何數字按鈕或符號按鈕時,它都會插入到 Entry 小部件中,如果按下數字按鈕或符號按鈕以外的任何按鈕,它什么也不做。 我想把所有代碼放在鍵盤按鈕 function 中。
抱歉,代碼中的注釋較少。 並提前感謝您的幫助。
首先,我在__init__
中創建了一個與您的self.lst
匹配的列表,但所有字符都是字符串:
self.STR_LIST = list(map(str, self.lst))
接下來,我將按鍵綁定到您的 tkinter window,以便在按下鍵時調用keyboardbutton
按鈕方法(也在__init__
中):
self.window.bind("<Key>", self.keyboardbutton)
那么這應該適用於您的keyboardbutton
方法:
def keyboardbutton(self, event):
if event.char in self.STR_LIST:
self.insert(event.char)
當一個鍵被按下時,一個事件被發送到這個方法,我們只是簡單地檢查它是否是一個有效的輸入字符,然后調用你的insert
方法。
讓我知道這是否適合您。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.