使用tkinter库创建移动的小车
时间: 2023-12-25 13:02:52 浏览: 37
好的,以下是一个使用tkinter库创建移动的小车的示例代码:
```
import tkinter as tk
class Car:
def __init__(self, canvas, x, y):
self.canvas = canvas
self.body = canvas.create_rectangle(x, y, x+50, y+30, fill='red')
self.wheel1 = canvas.create_oval(x+5, y+25, x+20, y+40, fill='black')
self.wheel2 = canvas.create_oval(x+30, y+25, x+45, y+40, fill='black')
def move(self, x, y):
self.canvas.move(self.body, x, y)
self.canvas.move(self.wheel1, x, y)
self.canvas.move(self.wheel2, x, y)
class App:
def __init__(self, master):
self.master = master
self.canvas = tk.Canvas(master, width=400, height=300)
self.canvas.pack()
self.car = Car(self.canvas, 50, 50)
self.canvas.bind('<Up>', self.move_up)
self.canvas.bind('<Down>', self.move_down)
self.canvas.bind('<Left>', self.move_left)
self.canvas.bind('<Right>', self.move_right)
def move_up(self, event):
self.car.move(0, -10)
def move_down(self, event):
self.car.move(0, 10)
def move_left(self, event):
self.car.move(-10, 0)
def move_right(self, event):
self.car.move(10, 0)
root = tk.Tk()
app = App(root)
root.mainloop()
```
在这个示例中,我们创建了一个`Car`类用于绘制小车。`move`方法用于移动小车并更新小车在canvas上的位置。`App`类则创建了一个canvas和一个`Car`实例,并设置了四个键盘事件来控制小车的移动。
你可以运行这个示例代码来查看效果。希望对你有所帮助!