Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

Tkinter에서 OptionMenu 위젯을 사용하여 함수를 호출하는 방법은 무엇입니까?

<시간/>

예를 들어 Tkinter에서 OptionMenu 위젯을 사용하여 함수를 호출하는 방법을 살펴보겠습니다. 이 예에서는 StringVar를 사용합니다. 객체를 만들고 get() 메서드를 호출합니다. StringVar Tkinter의 객체는 위젯의 값을 관리하는 데 도움이 될 수 있습니다.

OptionMenu 위젯을 만들고 문자열 목록으로 채웁니다. 사용자가 옵션을 선택하면 선택한 옵션을 레이블로 인쇄하는 기능이 호출됩니다.

단계 -

  • tkinter 라이브러리를 가져오고 tkinter 프레임의 인스턴스를 만듭니다.

  • 기하학을 사용하여 프레임 크기 설정 방법.

  • 문자열 세트를 만들고 변수 data에 저장합니다. .

  • 다음으로 StringVar()를 사용합니다. StringVar를 생성하는 생성자 물체. OptionMenu인 위젯의 값을 관리하는 데 도움이 됩니다. 이 경우.

  • 문자열 "옵션" 목록 만들기 및 옵션 메뉴 . StringVar를 전달하여 OptionMenu의 값을 설정합니다. 개체 및 "옵션" .

  • OptionMenu에서 선택한 옵션을 표시하는 레이블을 만듭니다.

  • 사용자 정의 함수 "OptionMenu_Select" 만들기 라벨의 OptionMenu에서 선택한 항목을 인쇄합니다.

  • command=OptionMenu_Select 매개변수 사용 사용자가 옵션을 선택할 때 사용자 정의 함수를 호출합니다.

  • 마지막으로 메인 루프를 실행합니다. 응용 프로그램 창의.

예시

# Import the tkinter library
from tkinter import *

# Create an instance of tkinter frame
root = Tk()
root.geometry("700x300")

# Create the option and Check Button Event
def OptionMenu_Select(event):
label_city.config(text="You have selected: " + var.get())

# Create the variables
var = StringVar();
var.set("Select a City")

options = ["Mumbai", "Chennai", "Bhubaneswar", "Pune", "Patna", "Bhopal", "Surat", "Hyderabad", "New Delhi", "Lucknow"]
OptionMenu(root, var, *(options), command=OptionMenu_Select).pack(pady=50)

label_city=Label(root, font="Calibri,12,bold")
label_city.pack(padx=20, pady=20)

root.mainloop()

출력

다음 출력을 생성합니다 -

Tkinter에서 OptionMenu 위젯을 사용하여 함수를 호출하는 방법은 무엇입니까?

사용자가 옵션을 선택하면 선택한 옵션이 레이블로 표시됩니다 -

Tkinter에서 OptionMenu 위젯을 사용하여 함수를 호출하는 방법은 무엇입니까?