Python tkinter 강좌 : 제 26강 – Combobox

   

Combobox (콤보박스)


Combobox을 이용하여 텍스트와 허용된 값의 드롭다운 목록을 표시하는 콤보박스를 생성할 수 있습니다.



Spinbox 사용


import tkinter
import tkinter.ttk

window=tkinter.Tk()
window.title("YUN DAE HEE")
window.geometry("640x400+100+100")
window.resizable(False, False)

values=[str(i)+"번" for i in range(1, 101)] 

combobox=tkinter.ttk.Combobox(window, height=15, values=values)
combobox.pack()

combobox.set("목록 선택")

window.mainloop()


import tkinter.ttk


상단에 import tkinter.ttk를 사용하여 ttk 모듈을 포함시킵니다. tkinter.ttk 함수의 사용방법은 tkinter.ttk.*를 이용하여 사용이 가능합니다.


values=[str(i)+"번" for i in range(1, 101)] 

combobox=tkinter.ttk.Combobox(window, height=15, values=values)
combobox.pack()

combobox.set("목록 선택")

tkinter.ttk.Combobox(윈도우 창, 파라미터1, 파라미터2, 파라미터3, ...)을 사용하여 콤보박스의 속성을 설정할 수 있습니다.

파라미터를 사용하여 콤보박스의 속성을 설정합니다.



Combobox Method###


콤보박스 메소드
이름의미설명
set(“문자열”)표시값 변경콤보박스의 현재 텍스트 변경
get()표시값 반환콤보박스의 현재 텍스트 반환
current(index)목록 표시해당 index의 목록 표시



Combobox Parameter


콤보박스 텍스트 설정
이름의미기본값속성
textvariable콤보박스에 표시할 문자열을 가져올 변수--
justify콤보박스의 문자열이 여러 줄 일 경우 정렬 방법leftcenter, left, right



콤보박스 형태 설정
이름의미기본값속성
width콤보박스의 너비20상수
height콤보박스의 드롭 다운 목록이 표시할 개수20상수



콤보박스 형식 설정
이름의미기본값속성
cursor콤보박스의 마우스 커서 모양-커서 속성
class_클래스 설정--
xscrollcommand콤보박스의 가로스크롤 위젯 적용-Scrollbar위젯.set
values 콤보박스의 목록 값-list, tuple 등
exportselection수치 조정 기압창의 선택 항목 여부 설정TrueBoolean



콤보박스 동작 설정
이름의미기본값속성
takefocusTab 키를 이용하여 위젯 이동 허용 여부FalseBoolean
postcommand콤보박스에서 드롭다운 목록을 클릭할 때 실행하는 메소드(함수)-메소드, 함수
validate콤보박스의 유효성 검사 실행 조건nonenone, focus, focusin, focusout, key, all
validatecommand유효성 검사 평가 함수-함수
invalidcommandvalidateCommand가 False를 반환 할 때 실행할 함수-함수



참고

  • cursor 파라미터

    • arrow, based_arrow_down, based_arrow_up, boat, bogosity, bottom_left_corner, bottom_right_corner, bottom_side, bottom_tee, box_spiral, center_ptr, circle, clock, coffee_mug, cross, cross_reverse, crosshair, diamond_cross, dot, dotbox, double_arrow, draft_large, draft_small, draped_box, exchange, fleur, gobbler, gumby, hand1, hand2, heart, icon, iron_cross, left_ptr, left_side, left_tee, leftbutton, ll_angle, lr_angle, man, middlebutton, mouse, pencil, pirate, plus, question_arrow, right_ptr, right_side, right_tee, rightbutton, rtl_logo, sailboat, sb_down_arrow, sb_h_double_arrow, sb_left_arrow, sb_right_arrow, sb_up_arrow, sb_v_double_arrow, shuttle, sizing, spider, spraycan, star, target, tcross, top_left_arrow, top_left_corner, top_right_corner, top_side, top_tee, trek, ul_angle, umbrella, ur_angle, watch, wait, xterm, X_cursor

  • values[5, 10, 50, 100]으로 설정하였을 경우, 목록의 순서로 드롭다운 목록 표시

  • validate 파라미터

    • none : 콤보박스의 유효성 검사 실행하지 않음
    • focus : 콤보박스가 포커스를 받거나 잃을 때 validateCommand 실행
    • focusin : 콤보박스가 포커스를 받을 때 validateCommand 실행
    • focusout : 콤보박스가 포커스를 잃을 때 validateCommand 실행
    • key : 콤보박스가 수정될 경우 validateCommand 실행
    • all : 콤보박스의 모든 validate에 대해 validateCommand 실행


도움이 되셨다면 광고 클릭 부탁드립니다.

⤧  Next post Python tkinter 강좌 : 제 27강 – Progressbar ⤧  Previous post Python tkinter 강좌 : 제 25강 – Spinbox