본문 바로가기
Python

[python_gui] DoubelVar()가 뭐였지?

by 콧등치기국수 2020. 10. 1.

추석연휴를 맞아 gui를 이용하여 작은 프로젝트를 따라 만들고 있습니다.

progress var를 만들던 중 DoubleVar()라는 것이 나왔어요

분명 봤었는데 기억이 안나서 간단히 복습차원으로 정리해보았습니다.

 

 

  • IntVar, DoubleVar, StringVar

tkinter 모듈안에는 IntVar, Doublevar, Stringvar클래스 정의되어있다.

IntVar: 정수 , Doublevar: 소수, StringVar: 문자열 을 나타내는 클래스이다.

위 클래스들은 위젯에 쓰이는 값(value)들을 객체로 만들 때 이용한다.

즉 위젯에 쓰이는 값(value)은 IntVar, Doublevar, Stringvar의 객체(object)이어야만 한다.

 

# 체크박스

chk_var1 = IntVar()                                              # chk_var에 Int형으로 값을 저장
chkbox = Checkbutton(root,text="체크하세요",variable=chk_var1)    # 체크박스: 변수에 값을 저장해서 씀
chkbox.select()
chkbox.pack()

chk_var2 = IntVar()                              
chkbox2 = Checkbutton(root,text="체크!",variable=chk_var2)
chkbox2.pack()


def chkcmd():
    print(chk_var1.get())                # 0: 체크해제  1: 체크
    print(chk_var2.get())      

btn1 = Button(root,text="체크박스",command=chkcmd)
btn1.pack() 

예전에 체크박스를 만드는 예제에서 썼던 코드를 들고왔습니다.

IntVar를 이용해 정수형으로 값을 저장해서 체크박스 위젯에 값으로 쓰고 있네요

 

chk_var1 : IntVar() 클래스의 객체

              chkbox 위젯에서 쓰이는 값(variable)

 

 

 

 

 

출처: andamiro25.tistory.com/60