버튼 위젯과 같은 Tkinter 위젯에 설명을 추가하고, 마우스 커서를 올렸을 때 툴팁 텍스트가 자동으로 표시되는 애플리케이션을 만들고 싶다고 가정해 보겠습니다. 이러한 기능은 툴팁(tooltip) 또는 팝업을 추가함으로써 손쉽게 구현할 수 있습니다.
툴팁은 사용자와의 상호작용이 필요한 애플리케이션에서 특히 유용합니다. UI 요소가 많아 각 기능을 직관적으로 파악하기 어려울 때, 툴팁은 별도의 도움말 문서 없이도 사용자에게 필요한 정보를 즉각적으로 전달해 줍니다.
Tkinter에서는 Balloon(win) 생성자를 인스턴스화하여 툴팁을 정의할 수 있습니다. 그다음 bind_widget() 메서드를 사용해 원하는 위젯(예: 버튼)에 툴팁 메시지를 바인딩하면, 해당 위젯 위에 마우스를 올릴 때마다 안내 문구가 나타나게 됩니다.
예제 코드
#Import the tkinter library
from tkinter import *
from tkinter.tix import *
#Create an instance of tkinter frame
win = Tk()
#Set the geometry
win.geometry("400x200")
#Create a tooltip
tip = Balloon(win)
#Create a Button widget
my_button = Button(win, text="Python", font=('Helvetica bold', 20))
my_button.pack(pady=20)
#Bind the tooltip with button
tip.bind_widget(my_button, balloonmsg="Python is an interpreted, high-level and general-purpose programming language")
win.mainloop()코드 설명
- Balloon(win): 툴팁(풍선 도움말) 객체를 생성합니다.
- bind_widget(): 첫 번째 인자로 전달된 위젯에 balloonmsg로 지정한 툴팁 메시지를 연결합니다.
실행 결과
위 코드를 실행하면 400x200 크기의 창에 "Python"이라는 버튼이 하나 표시됩니다. 이제 해당 버튼 위에 마우스 커서를 잠시 올려두면, 파이썬에 대한 설명이 담긴 툴팁 텍스트가 화면에 나타나는 것을 확인할 수 있습니다.

참고: tkinter.tix 모듈은 최신 파이썬 버전(3.13부터)에서 제거되었으므로, 최신 환경에서는 tkcalltooltip 같은 서드파티 라이브러리를 사용하거나 Toplevel 윈도우를 활용해 직접 툴팁을 구현하는 방법을 권장합니다.