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

Python Tkinter geometry() 메서드 – GUI 창 크기와 위치 설정하기

파이썬(Python)은 Tkinter 라이브러리를 활용해 손쉽게 GUI(그래픽 사용자 인터페이스) 애플리케이션을 개발할 수 있습니다. Tkinter는 위젯 배치, 이벤트 처리 등 다양한 유용한 메서드를 제공하는데, 그중에서도 geometry() 메서드는 우리가 만들 화면 레이아웃의 크기, 위치 등 핵심 속성을 결정하는 가장 기본적인 메서드입니다.

geometry() 메서드는 '너비x높이' 형식의 문자열을 인자로 받습니다. 예를 들어 '200x200'은 가로 200픽셀, 세로 200픽셀 크기의 창을 의미합니다.

예제 1 – 기본 창과 버튼 만들기

아래 프로그램은 geometry() 메서드를 사용해 200x200 픽셀 크기의 창을 생성한 뒤, 버튼을 추가하고 sidepady 옵션으로 버튼의 위치를 지정합니다.

from tkinter import *

base = Tk()
base.geometry('200x200')
stud = Button(base, text='Tutorialspoint', font=('Courier', 14, 'bold'))
stud.pack(side=TOP, pady=6)
mainloop()

위 코드를 실행하면 다음과 같은 결과가 나타납니다.

Python Tkinter geometry() 메서드 – GUI 창 크기와 위치 설정하기

주요 옵션 설명

  • side=TOP: 버튼을 창의 상단에 배치합니다. (LEFT, RIGHT, BOTTOM도 사용 가능)
  • pady=6: 버튼 주변의 세로 여백을 6픽셀로 설정합니다.

예제 2 – 클릭 가능한 링크가 있는 창 만들기

이번 예제에서는 클릭하면 특정 URL로 이동할 수 있는 버튼이 포함된 창을 만듭니다. 마찬가지로 geometry() 메서드로 원하는 크기의 창을 생성하고, webbrowser 모듈과 버튼의 command 옵션을 연결해 버튼 클릭 시 웹 브라우저가 열리도록 구현합니다.

import webbrowser
from tkinter import *

def Uniform_Resource_Locator():
    url = webbrowser.open_new("https://tutorialspoint.com")

main = Tk()
main.geometry("300x250")
stud = Button(main, text="visit Tutorialspoint", font=('Courier', 15, 'bold'), command=Uniform_Resource_Locator)
stud.pack(side=RIGHT, pady=6)
main.mainloop()

위 코드를 실행하면 다음과 같은 결과를 확인할 수 있습니다.

Python Tkinter geometry() 메서드 – GUI 창 크기와 위치 설정하기

정리

Tkinter의 geometry() 메서드를 활용하면 창의 크기를 자유롭게 조절할 수 있으며, pack() 메서드의 side, pady 같은 옵션과 함께 사용하면 위젯의 배치까지 세밀하게 제어할 수 있습니다. 또한 webbrowser 모듈과 연동하면 GUI 안에서 외부 웹 페이지로 연결되는 링크 버튼도 간단히 구현할 수 있습니다.