프로그래밍 언어/파이썬

[Python] Tkinter를 이용한 윈도우 창 생성

곡마일장 2022. 8. 10. 17:36

 tkinter란 파이썬 라이브러리 중 하나로, 윈도우 창을 생성하는 인터페이스, 다른 말로 GUI를 제공하는 툴킷입니다.

tkinter는 파이썬에서 자주 사용되는 라이브러리로, Canvas상에 다양한 위젯 (Label, Button)등을 이용하여 사용자에게 필요한 GUI 환경을 구축할 수 있습니다. 

 

오늘은 가장 먼저, tkinter을 이용하여 윈도우 창을 생성하는 방법에 대해서 간단하게 알아보겠습니다.

 

# 라이브러리 호출

import tkinter import *

-->만약 module not found 에러가 발생하면, pip 명령어를 통해 라이브러리를 설치해 주도록 합니다.

 

 

# root라는 이름의 Tk객체 생성

root = Tk()

-->가장 기본이 되는 객체 생성 단계입니다.

 

 

# root 객체에 타이틀을 생성

root.title("TEST WINDOW")

-->.title을 이용하여 윈도우 최상단 탭에 표시되는 제목을 바꿀 수 있습니다.

 

 

# mainloop문을 이용하여 사용자의 입력을 기다린 채 반복됨

root.mainloop()

-->mainloop를 사용하여 사용자의 키보드 입력이나 마우스 클릭 이벤트가 발생하는 것을 감지하는 역할을 합니다.

이 mainloop로 인하여 tkinter 인터페이스를 구축하는 과정에서 많은 에러들이 발생했는데요.

간단하게 말씀드리면, 하나의 프로세스에서는 하나의 mainloop만이 존재할 수 있다는 것을 망각했기 때문이었습니다.

이 사항에 대해서는 추후  tkinter 게시물을 업로드 하며 말씀드리도록 하겠습니다 ㅜㅜ

 

실행 1_1

윈도우 창이 생성된 결과입니다. 아직 아무런 위젯과 설정을 주지 않았기 때문에, 비어 있는 상태로 굉장히 작게 띄워집니다. 이제 옵션을 추가하여 윈도우 창을 변화시킬 수 있습니다.

 

# geometry를 이용하여 root 크기 변화

root.geometry("800x800")

-->geometry 속성을 이용하여 윈도우를 해당 픽셀 만큼의 크기로 변화시킬 수 있습니다,

실행 1_2

실행 결과입니다. 이전 결과와 다르게 확연히 커진 모습을 확인 할 수 있습니다.

 

 

 

# atrributes를 이용하여 전체화면 실행해보기

root.attributes('-fullscreen', True)

-->이전에 추가한 행을 삭제해도 되고, 삭제하지 않아도 됩니다. 이 코드는 강제로 전체화면을 만들어 줍니다.

실행 결과입니다. 오류가 난것이 아니라 다른 추가 위젯이 없기 때문에 빈 화면으로 전체 화면 설정이 된 것입니다.

 

 

오늘은 tkinter을 이용해서 윈도우 창을 생성하는 코드를 간단하게 실습해보았습니다.

감사합니다.