Tkinter의 버튼 명령에 인수 전달
Tkinter에서 버튼을 생성할 때 실행되는 작업을 정의하는 명령 옵션을 지정할 수 있습니다. 버튼을 누르면. 그러나 이 명령에 인수를 전달하는 것이 바람직할 수 있습니다.
인라인 람다 함수
한 가지 해결책은 익명 함수인 람다를 활용하는 것입니다. 예는 다음과 같습니다.
import Tkinter as Tk win = Tk.Toplevel() frame = Tk.Frame(master=win).grid(row=1, column=1) someNumber = 10 # Pass an argument to the action method button = Tk.Button(master=frame, text='press', command= lambda: action(someNumber))
이 코드에서 람다 함수는 버튼을 누를 때 someNumber의 값을 캡처하여 작업 메서드에 인수로 전달합니다.
래퍼 메서드
또 다른 접근 방식은 임의 개수의 인수를 받아들이고 다음을 호출하는 래퍼 메서드를 만드는 것입니다. 적절한 인수가 포함된 원래 작업 메서드:
import Tkinter as Tk def action_wrapper(*args): action(*args) someNumber = 10 button = Tk.Button(master=frame, text='press', command= action_wrapper(someNumber))
위 내용은 Tkinter 버튼 명령에 인수를 전달하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!