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

Tkinter에서 위젯을 창 오른쪽 하단 모서리에 고정하는 방법

Tkinter는 애플리케이션의 GUI를 구성할 때 활용할 수 있는 다양한 내장 기능과 메서드를 제공합니다. 그중에서도 특정 위젯의 위치를 적절하게 설정하는 방법을 아는 것은 반응형(responsive) 인터페이스를 만들기 위해 반드시 알아야 할 핵심 요소입니다.

Tkinter는 pack, grid, place 세 가지 지오메트리 관리자(geometry manager)를 통해 위젯의 위치와 크기를 제어할 수 있습니다. 이 가운데 place 지오메트리 관리자는 복잡한 레이아웃이나 정밀한 위치 지정이 필요한 위젯을 구성할 때 가장 유용하게 사용됩니다.

place 지오메트리 관리자와 anchor 속성

위젯을 애플리케이션 창의 오른쪽 하단 모서리에 배치하고 싶다면 place() 메서드와 함께 anchor 속성을 사용하면 됩니다. anchor 속성은 위젯의 어느 지점을 기준으로 좌표를 계산할지 결정하는 역할을 하며, SE(South-East) 값을 지정하면 위젯의 오른쪽 아래 모서리가 기준점이 됩니다.

또한 relxrely 옵션은 부모 컨테이너 크기에 대한 상대적 비율(0.0~1.0)로 위치를 지정합니다. 두 값을 모두 1.0으로 설정하면 창의 오른쪽 끝과 아래쪽 끝에 위젯이 고정되며, 창 크기가 변경되어도 상대적인 위치가 유지됩니다.

예제 코드

아래 예제는 버튼 위젯 하나를 생성하여 창의 오른쪽 하단에 배치하는 코드입니다.

# 필요한 라이브러리 임포트
from tkinter import *
from tkinter import ttk

# tkinter 프레임(윈도우) 인스턴스 생성
win = Tk()

# 윈도우 크기 설정
win.geometry("700x350")

# 프레임에 버튼 추가 후 오른쪽 하단에 배치
button1 = ttk.Button(win, text="Button-1")
button1.place(rely=1.0, relx=1.0, x=0, y=0, anchor=SE)

win.mainloop()

실행 결과

위 코드를 실행하면 버튼이 창의 오른쪽 하단 모서리에 정확히 고정된 것을 확인할 수 있습니다.

Tkinter에서 위젯을 창 오른쪽 하단 모서리에 고정하는 방법

주요 옵션 정리

  • relx / rely: 부모 위젯 크기 대비 상대적 위치(0.0~1.0)
  • x / y: 픽셀 단위의 절대적 오프셋
  • anchor: 위젯의 기준 방향(N, S, E, W, NE, NW, SE, SW, CENTER)

이처럼 place 지오메트리 관리자의 anchor 속성과 상대 좌표 옵션을 조합하면 창 크기와 무관하게 원하는 위치에 위젯을 안정적으로 고정할 수 있습니다.