พิจารณากรณีสำหรับการสร้างแอปพลิเคชัน GUI โดยที่เมื่อเราคลิกบนหน้าต่างด้วยปุ่มเมาส์ มันจะเก็บพิกัดและสร้างเส้นแบ่งระหว่างจุดสองจุดที่กำหนด Tkinter จัดเตรียมกิจกรรมที่อนุญาตให้ผู้ใช้ผูกปุ่มหรือปุ่มด้วยฟังก์ชันต่างๆ
ในการลากเส้นระหว่างจุดสองจุด เราสามารถทำตามขั้นตอนทั่วไปเหล่านี้ได้
-
สร้างวิดเจ็ตผ้าใบและแพ็คเพื่อแสดงในหน้าต่าง
-
กำหนดฟังก์ชัน draw_line() ที่ทำงานเป็นเหตุการณ์เมื่อผู้ใช้ทำเหตุการณ์การคลิก
-
สร้างตัวแปรร่วมที่นับจำนวนคลิกในพื้นที่ทำงาน
-
หากการนับกลายเป็นสอง ให้ลากเส้นระหว่างพิกัดที่หนึ่งและที่สอง
-
ผูกปุ่มเมาส์ด้วยฟังก์ชันเรียกกลับเพื่อควบคุมฟังก์ชันได้อย่างเต็มที่
ตัวอย่าง
# Import the required libraries from tkinter import * from tkinter import ttk # Create an instance of tkinter frame or window win=Tk() # Set the size of the window win.geometry("700x350") # Define a function to draw the line between two points def draw_line(event): global click_num global x1,y1 if click_num==0: x1=event.x y1=event.y click_num=1 else: x2=event.x y2=event.y # Draw the line in the given co-ordinates canvas.create_line(x1,y1,x2,y2, fill="green", width=10) # Create a canvas widget canvas=Canvas(win, width=700, height=350, background="white") canvas.grid(row=0, column=0) canvas.bind('<Button-1>', draw_line) click_num=0 win.mainloop()
ผลลัพธ์
เรียกใช้รหัสด้านบนเพื่อแสดงหน้าต่าง หากเราคลิกที่วิดเจ็ตผ้าใบสองครั้งที่ใดก็ได้ วิดเจ็ตจะวาดเส้นในแคนวาส