Tkinter는 Python 기반의 GUI 툴킷으로, 데스크톱 애플리케이션을 개발할 때 널리 사용됩니다. 다양한 위젯(widget)을 활용해 애플리케이션의 구성 요소를 손쉽게 만들 수 있으며, 크로스 플랫폼을 지원하기 때문에 하나의 프로그램으로 여러 운영체제에서 실행할 수 있다는 장점이 있습니다. 다만 일부 함수나 클래스 라이브러리는 Windows에서는 완벽하게 동작하지만 Linux 환경에서는 정상적으로 작동하지 않는 경우도 있습니다.
특히 macOS에서 Tkinter의 Button 위젯은 운영체제 고유의 네이티브 스타일 버튼을 생성합니다. 이 버튼은 tkinter에서 제공하는 라이브러리 함수와 매개변수를 통해 자유롭게 커스터마이징할 수 있으며, 그중 default 매개변수를 사용하면 버튼을 강조 표시할 수 있습니다. 이 매개변수는 macOS가 지원하는 기본 강조 색상(파란색)을 해당 버튼에 적용합니다.
예제 코드
다음 예제를 통해 실제 동작 방식을 살펴보겠습니다.
# 라이브러리 임포트
from tkinter import *
# 윈도우 인스턴스 생성
win=Tk()
# 윈도우 크기 설정
win.geometry("700x350")
# 프레임 생성
frame=Frame(win)
# 두 개의 버튼 생성
save_btn=Button(frame, text="Save", default="active")
save_btn.pack(side="right")
cancel_btn=Button(frame, text="Cancel", default="normal")
cancel_btn.pack(side="left")
frame.pack(pady=50)
win.mainloop()실행 결과
위 코드를 실행하면 프레임 안에 두 개의 버튼이 생성됩니다. macOS에서 버튼의 기본 색상은 "파란색"이므로, default 매개변수를 활용해 특정 버튼에 기본 강조 색상을 지정할 수 있습니다.

반면 Windows 시스템에서 실행하면 출력 화면은 아래와 같습니다.
