1
背景(フロアマップ)画像でキャンバス上を動くボールを描く必要があります。 イメージを読み込んでボールを動かすようにしましたが、キャンバスボールはバックグラウンドの上に置かれません。tkinterの背景イメージを作成するには?
import Tkinter as tk
import random
import time
from PIL import ImageTk, Image
root = tk.Tk()
root.resizable(width=False, height=False)
root.wm_attributes("-topmost", 1)
path = 'C:\xx\Pictures\xxx.jpg'
img = Image.open(path)
photo = ImageTk.PhotoImage(img)
class Ball:
def __init__(self, canvas, color):
self.canvas = canvas
self.id = canvas.create_oval(10, 10, 25, 25, fill=color)
self.canvas.move(self.id, 245, 100)
def draw(self):
self.canvas.move(self.id, 1, 1)
self.canvas.after(50, self.draw)
canvas = tk.Canvas(root, bd=0, highlightthickness=0)
canvas.pack()
background_label = tk.Label(root, image = photo)
background_label.place(x=0, y=0, relwidth=1.0, relheight=1.0, anchor="center")
background_label.pack()
ball = Ball(canvas, "red")
ball.draw() #Changed per Bryan Oakley's comment.
root.mainloop()