Appia의 IT세상

파이썬[Python] 023 tkinter 기본강의 003 checkbutton, Entry 본문

Python/Python Tk (GUI)

파이썬[Python] 023 tkinter 기본강의 003 checkbutton, Entry

Appia 2020. 1. 1. 07:21
반응형

앞서 포스팅에서는 tkinter의 각 위젯들을 배치하는 방법에 대해서 살펴보았습니다. 그래서 오늘부터는 본격적으로 각 위젯에 대해서 살펴보고자 합니다. 그래서 이번 포스팅에서는 Checkbutton과 Entry에 대해서 살펴보겠습니다. 참고로 전 최소한의 옵션들에 대해서만 언급하도록 하겠습니다. 실제, 많은 옵션들이 존재하지만 이제까지 거의 사용해본적이 없는 것 같습니다. ( 물론 그래서 그런지 몰라도 저의 GUI는 투박하고 못생겼습니다. )

 

Checkbutton

속성에 대해서 참/거짓(true/False)로 표현할 부분에 대해서 많은 사람들이 체크버튼(checkbutton)를 사용합니다. 체크버튼(checkbutton)은 실제 체크박스라고도 많이 불립니다. 이 부분에 대해서 만드는 방법에 대해서 살펴보도록 하겠습니다. 

 

w = Checkbutton(target, option...)  

target - 체크버튼(checkbutton)을 표시할 타켓 
option-  체크버튼(checkbutton)에 대한 세부 설정

그럼 다음 예제 코드를 한번 살펴보겠습니다. 

from tkinter import *

top = Tk()
C_Var1 = IntVar()
C_Var2 = IntVar()
Check1 = Checkbutton(top, text="Check1", variable=C_Var1, \
                 onvalue=1, offvalue=0)
Check2 = Checkbutton(top, text="Check2", variable=C_Var2, \
                 onvalue=1, offvalue=0)

Check1.pack()
Check2.pack()
top.mainloop()

위의 코드를 잠깐 봐보면 2개의 체크버튼을 생성하는 코드입니다. 실행해보면 다음과 같은 결과가 나올 것입니다. 


위에 체크된  값을 읽어오는 방법에 대해서 살펴보겠습니다. 
앞서서 생성한 Variable에 대해서 get()메소드를 통해서 설정된 값을 확인할 수 있습니다. 

위의 예제에 다음과 같은 부분을 추가 해보도록 하겠습니다. 

print(C_Var1.get())
print(C_Var2.get())


입력된 값에 대해서 확인된 부분을 확인할 수 있을 것입니다.

0
0

 

Entry

한줄의 텍스트를 표현하기 위해서 보여주는 탭이라고 보시면 됩니다. 한줄로 표현해야하는 부분에 대해서 입력 받거나 할 경우에 사용하는 부분입니다. 물론, 이 부분에 대해서는 살짝 조심해야 할것이 있습니다. tkinter는 text라는 객체를 지원하고 있습니다. 이 부분은 여러줄을 표현할 수 있습니다. 따라서 한줄로 된 문자열등을 입력 받거나 할 경우에 사용하는 부분으로 생각하면 됩니다. 

 

w = Entry(target,options...)  

target - 체크버튼(checkbutton)을 표시할 타켓  
option-  체크버튼(checkbutton)에 대한 세부 설정 


위의 방식으로 생성하시면 됩니다. 그럼 간단한 예제를 살펴보도록 하겠습니다. 

from tkinter import *

top = Tk()
S_Var1 = StringVar()
E1 = Entry(top, bd = 5,textvariable = S_Var1)
E1.pack(side = RIGHT)
top.mainloop()


물론 테스트를 입력하는 부분이므로, 관련 테스트를 코드상 또는 내부에서 사용해야하는 경우가 있습니다. 

 


이 때에도 앞서서 봤던 get()메소드를 이용합니다. 관련해서 간단히 예제에 추가해보도록 하겠습니다.

print(S_Var1.get())

다음과 같은 명령어를 입력하시면 Entry에 입력하신 부분에 대해서 콘솔에 표시해줍니다. 

 

오늘은 간단히 Checkbutton, Entry에 대해서 살펴봤습니다. 상기 관련해서 많은 부분들이 실 프로젝트에서 사용되고, 관련 값에 대해서 도움이 될 것으로 생각됩니다. 

혹시 궁금하시거나, 문의 사항이 있으시면 언제든지 댓글 및 방명록에 글 부탁드립니다. 

반응형
Comments