Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

กำหนดว่าปุ่มไหนถูกกดใน Tkinter


ปุ่มมีประโยชน์มากในแอปพลิเคชันหลายอย่างที่ต้องการปฏิสัมพันธ์ผู้ใช้ สมมติว่าเราต้องการทราบว่าปุ่มไหนถูกกดในแอปพลิเคชันที่กำหนด เพื่อรับข้อมูลเกี่ยวกับปุ่ม เราสามารถใช้ callback function ในการกำหนดค่าปุ่ม ใน Callback function เราจะใช้ print(test) เพื่อพิมพ์ปุ่มที่ถูกคลิก

ตัวอย่าง

# นำเข้าไลบรารีที่จำเป็น
from tkinter import *
from tkinter import ttk

# สร้างอินสแตนซ์ของ Tkinter Frame
win = Tk()
# กำหนดขนาด
win.geometry("700x250")

# กำหนดฟังก์ชันรับข้อมูลเกี่ยวกับปุ่ม
def get_button(t):
    print(t)

# สร้าง Button Object
b1 = ttk.Button(win, text="Button-1", command=lambda t="Button-1 Clicked": get_button(t))
b1.place(relx=.46, rely=.5, anchor=CENTER)
b2 = ttk.Button(win, text="Button-2", command=lambda t="Button-2 Clicked": get_button(t))
b2.place(relx=.58, rely=.5, anchor=CENTER)

win.mainloop()

ผลลัพธ์

การรันโค้ดจะแสดงหน้าต่างที่มีปุ่มสองปุ่ม

กำหนดว่าปุ่มไหนถูกกดใน Tkinter

ถ้าคลิก "Button-1" จะพิมพ์ข้อความต่อไปนี้บนคอนโซล

Button-1 Clicked