Python에서 함수에 인수를 전달하는 기본 방법은 다음과 같습니다.
def function(x):
# function definition
function(y)
즉, 호출 function
할 때 괄호 안에 값을 전달합니다.
그러나 tkinter를 사용하고 있으며 이벤트 canvas.bind()
메서드는 다음과 같이 작동합니다.
def event_handler(event):
# function definition
canvas.bind('event-name', event_handler)
즉, canvas.bind
메서드를 호출 할 때 예상대로 (즉, 수행 event_handler
하여) 인수 'event-name'
를 전달하지 않는 것 같습니다 . 대신 인수없이 호출 합니다.event_handler
event_handler('event-name')
event_handler
그렇다면 event-handler
정의에 따라 수신해야하는 이벤트 인수를 어떻게 수신합니까?
그것은 당신이 기대하는대로 수행합니다. 바인딩 에서 호출 할 함수 의 이름 을 제공합니다 . 이벤트가 발생하면 이벤트를 처리하는 내부 tkinter 코드가 실제로 다음과 같이 호출합니다 event_handler(event)
..
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다