所以,我有我寫了這個非常簡單的事情,它的殺了我試圖找出爲什麼它不會工作。它所做的只是點擊時打印聲明。類型錯誤:printName1()有0位置參數,但1給出
所以對於第一個例子,我有一個按鈕,直接分配功能printName1
到它,這工作完全正常。
那麼接下來的事情就是使用.bind()
功能綁定。所以在這種情況下,我們只有一個框架,可以根據您按下哪個按鈕來打印某些內容。但不幸的是,每當我使用綁定,它會拋出上面的錯誤顯示。參考tkinter\__init__.py
的錯誤,所以它不是直接在我的代碼中,但也許它需要以不同的方式完成?多謝你們。
from tkinter import *
root = Tk()
def printName1():
print('Jack')
def printName2():
print('John')
def printName3():
print('Jill')
frame = Frame(root, width=300, height=250)
frame.bind("<Button-1>", printName1)
frame.bind("<Button-2>", printName2)
frame.bind("<Button-3>", printName3)
frame.pack()
root.mainloop()
編輯:該錯誤是令人困惑,因爲它使人們似乎有一個額外的參數時,應該有0但實際上我需要一個參數添加到的功能,那就是事件。所以它應該是def printName1(event)等等。只是想,我會讓你們知道什麼對我有用,以防有人絆倒在這。
不僅僅是鍵盤和鼠標事件,而是所有事件。 –
我沒有想到其他輸入設備,如遊戲杆。我想這是除了'Button'激活之外的任何用戶輸入? – TigerhawkT3
有一些虛擬事件,例如''ListboxSelect >>',以及像'',''等低級事件。 –