Widget Tkinter Canvas là một trong những widget đa năng trong thư viện Tkinter. Nó được sử dụng để tạo ra các hình dạng, hình ảnh và các đối tượng hoạt hình khác nhau. Chúng tôi có thể cung cấp thuộc tính động cho hình ảnh được xác định trong tiện ích Canvas bằng cách sử dụng move () phương pháp.
Xác định hình ảnh và tọa độ dưới dạng tham số trong di chuyển (Hình ảnh, x, y) để di chuyển Hình ảnh trong Canvas. Chúng tôi khai báo hình ảnh trên toàn cầu để theo dõi vị trí Hình ảnh trong Canvas.
Chúng tôi có thể làm theo các bước sau để làm cho hình ảnh của chúng tôi có thể di chuyển trong canvas,
-
Đầu tiên, xác định tiện ích Canvas và thêm hình ảnh vào đó.
-
Xác định move () chức năng cho phép hình ảnh động trong Canvas.
-
Ràng buộc các phím mũi tên với chức năng cho phép di chuyển hình ảnh trong Canvas.
Ví dụ
# Import the required libraries from tkinter import * from PIL import Image, ImageTk # Create an instance of tkinter frame win = Tk() # Set the size of the tkinter window win.geometry("700x350") # Define a Canvas widget canvas = Canvas(win, width=600, height=400, bg="white") canvas.pack(pady=20) # Add Images to Canvas widget image = ImageTk.PhotoImage(Image.open('favicon.ico')) img = canvas.create_image(250, 120, anchor=NW, image=image) def left(e): x = -20 y = 0 canvas.move(img, x, y) def right(e): x = 20 y = 0 canvas.move(img, x, y) def up(e): x = 0 y = -20 canvas.move(img, x, y) def down(e): x = 0 y = 20 canvas.move(img, x, y) # Bind the move function win.bind("<Left>", left) win.bind("<Right>", right) win.bind("<Up>", up) win.bind("<Down>", down) win.mainloop()
Đầu ra
Chạy đoạn mã trên sẽ hiển thị một cửa sổ chứa hình ảnh có thể được di chuyển qua cửa sổ bằng các phím mũi tên.
Bạn có thể di chuyển đối tượng trên canvas xung quanh bằng các phím Mũi tên.