Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Python

Cách gắn nhiều sự kiện vào một bind trong Tkinter


Để gắn nhiều callback cho cùng một sự kiện trên nhiều widget, lặp qua danh sách widget và gọi bind() cho từng widget.

Ví dụ minh họa

from tkinter import *
from tkinter import ttk

win = Tk()
win.geometry("700x350")

def change_bgcolor(e):
    label.config(background="#adad12")

def change_fgcolor(e):
    label.config(foreground="white")

label = Label(win, text="Hello World! Welcome to Tutorialspoint", font=('Georgia 19 italic'))
label.pack(pady=30)

b1 = ttk.Button(win, text="Button-1")
b1.pack()

for b in [b1]:
    b.bind("", change_bgcolor)
    b.bind("", change_fgcolor)

win.mainloop()

Kết quả đầu ra

Hover vào nút đổi màu nền Label, rời chuột đổi màu chữ.

Cách gắn nhiều sự kiện vào một bind trong Tkinter

Khi hover.

Cách gắn nhiều sự kiện vào một bind trong Tkinter