Computer >> 컴퓨터 >  >> 프로그래밍 >> Python

Tkinter ttk 콤보박스(Combobox) 기본값 설정 방법

Tkinter 콤보박스(Combobox)는 엔트리(Entry) 위젯에 드롭다운 메뉴를 추가해 주는 위젯으로, 애플리케이션에서 여러 개의 선택 항목을 효율적으로 처리할 때 매우 유용합니다. 콤보박스 위젯은 Combobox(arguments) 구문을 사용해 간단히 생성할 수 있습니다.

그런데 애플리케이션의 요구 사항에 따라 콤보박스가 처음 화면에 표시될 때 특정 항목이 미리 선택되어 있도록 기본값을 설정해야 할 때가 있습니다. 이는 콤보박스에 표시할 모든 항목을 변수에 저장해 둔 다음, current(index) 메서드에 원하는 값의 인덱스를 지정하는 방식으로 손쉽게 구현할 수 있습니다.

예제 코드

# Tkinter 라이브러리 임포트
from tkinter import *
from tkinter import ttk

# Tkinter 프레임(윈도우) 인스턴스 생성
win = Tk()

# 프레임 크기 설정
win.geometry("750x250")

# 콤보박스 생성 (읽기 전용 상태)
combobox = ttk.Combobox(win, state="readonly")
combobox['values'] = ('C++', 'Java', 'Python')

# 인덱스 2번 항목(Python)을 기본값으로 설정
combobox.current(2)

combobox.pack(pady=30, ipadx=20)
win.mainloop()

코드 설명

  • state="readonly": 사용자가 직접 텍스트를 입력하지 못하고 목록에서만 선택할 수 있도록 콤보박스를 읽기 전용 상태로 설정합니다.
  • combobox['values']: 콤보박스에 표시할 항목들을 튜플 형태로 지정합니다. 여기서는 'C++', 'Java', 'Python' 세 가지 항목을 담았습니다.
  • current(2): 인덱스는 0부터 시작하므로, 2를 지정하면 세 번째 항목인 'Python'이 기본 선택값으로 표시됩니다.

실행 결과

위 코드를 실행하면 기본값이 설정된 콤보박스가 포함된 창이 화면에 나타납니다. current() 메서드에 전달하는 인덱스 값만 바꾸면 기본값 역시 간단히 변경할 수 있습니다. 예를 들어 current(0)으로 지정하면 'C++'이, current(1)로 지정하면 'Java'가 초기 화면에 표시됩니다.

Tkinter ttk 콤보박스(Combobox) 기본값 설정 방법