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

วิธีการวาดเส้นตามพิกัดของเมาส์ด้วย tkinter?


ในการวาดเส้นตามพิกัดของเมาส์ เราต้องสร้างฟังก์ชันเพื่อจับพิกัดของการคลิกเมาส์แต่ละครั้ง จากนั้นจึงลากเส้นระหว่างจุดสองจุดที่ต่อเนื่องกัน มาดูตัวอย่างกันว่าทำอย่างไร

ขั้นตอน -

  • นำเข้าไลบรารี tkinter และสร้างอินสแตนซ์ของเฟรม tkinter

  • กำหนดขนาดของเฟรมโดยใช้เรขาคณิต วิธีการ

  • สร้างวิธีการที่ผู้ใช้กำหนด "draw_line" เพื่อจับพิกัด x และ y ของการคลิกเมาส์แต่ละครั้ง จากนั้น ใช้ create_line() วิธีการของ Canvas เพื่อลากเส้นระหว่างจุดสองจุดติดต่อกัน

  • ผูกการคลิกซ้ายของเมาส์ด้วย draw_line วิธีการ

  • สุดท้าย เรียกใช้ mainloop ของหน้าต่างแอปพลิเคชัน

ตัวอย่าง

# Import the library
import tkinter as tk

# Create an instance of tkinter
win = tk.Tk()

# Window size
win.geometry("700x300")

# Method to draw line between two consecutive points
def draw_line(e):
   x, y = e.x, e.y
   if canvas.old_coords:
      x1, y1 = canvas.old_coords
      canvas.create_line(x, y, x1, y1, width=5)
   canvas.old_coords = x, y

canvas = tk.Canvas(win, width=700, height=300)
canvas.pack()
canvas.old_coords = None

# Bind the left button the mouse.
win.bind('<ButtonPress-1>', draw_line)

win.mainloop()

ผลลัพธ์

มันจะติดตามการคลิกซ้ายของเมาส์และลากเส้นระหว่างจุดสองจุดที่ต่อเนื่องกัน

วิธีการวาดเส้นตามพิกัดของเมาส์ด้วย tkinter?