使用 Tkinter 在兩次滑鼠點選之間繪製一條線
考慮一種建立 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()
輸出
執行以上程式碼以顯示一個視窗。如果我們點選畫布小部件兩次,無論點選哪裡,它都會在畫布中繪製一條線。
廣告