วิดเจ็ต Tkinter Canvas เป็นหนึ่งในวิดเจ็ตอเนกประสงค์ในไลบรารี Tkinter ใช้เพื่อสร้างรูปทรง รูปภาพ และวัตถุเคลื่อนไหวต่างๆ เราสามารถจัดเตรียมแอตทริบิวต์ไดนามิกให้กับรูปภาพที่กำหนดไว้ในวิดเจ็ต Canvas โดยใช้ move() วิธีการ
กำหนดรูปภาพและพิกัดเป็นพารามิเตอร์ใน move(Image, x,y) วิธีการย้ายรูปภาพใน Canvas เราประกาศรูปภาพทั่วโลกเพื่อติดตามตำแหน่งรูปภาพใน Canvas
เราสามารถทำตามขั้นตอนเหล่านี้เพื่อทำให้รูปภาพของเราสามารถเคลื่อนที่ได้ภายในแคนวาส
-
ขั้นแรก กำหนดวิดเจ็ต Canvas และเพิ่มรูปภาพเข้าไป
-
กำหนด ย้าย() ฟังก์ชันเพื่อให้รูปภาพเป็นไดนามิกภายใน Canvas
-
ผูกแป้นลูกศรด้วยฟังก์ชันที่ช่วยให้สามารถย้ายรูปภาพภายใน Canvas
ตัวอย่าง
# 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() ผลลัพธ์
การเรียกใช้โค้ดด้านบนจะแสดงหน้าต่างที่มีรูปภาพที่สามารถย้ายข้ามหน้าต่างได้โดยใช้ปุ่มลูกศร

คุณสามารถย้ายวัตถุบนผืนผ้าใบไปรอบๆ ได้ด้วยปุ่มลูกศร