python实现简单画板
时间: 2023-11-26 11:41:59 浏览: 120
简单画板实现
以下是一个简单的Python画板实现示例:
```python
import tkinter as tk
class PaintApp:
def __init__(self, master):
self.master = master
self.master.title("简单画板")
self.master.geometry("400x400")
self.master.resizable(False, False)
self.color = "black"
self.canvas = tk.Canvas(self.master, bg="white", width=300, height=300)
self.canvas.pack()
self.canvas.bind("<B1-Motion>", self.draw)
self.color_btns = []
colors = ["black", "red", "green", "blue", "purple"]
for i, color in enumerate(colors):
btn = tk.Button(self.master, bg=color, width=2, command=lambda c=color: self.change_color(c))
btn.pack(side="left", padx=5)
self.color_btns.append(btn)
clear_btn = tk.Button(self.master, text="清空", command=self.clear_canvas)
clear_btn.pack(side="bottom", pady=10)
def draw(self, event):
x, y = event.x, event.y
r = 5
self.canvas.create_oval(x-r, y-r, x+r, y+r, fill=self.color, outline=self.color)
def change_color(self, color):
self.color = color
def clear_canvas(self):
self.canvas.delete("all")
if __name__ == "__main__":
root = tk.Tk()
app = PaintApp(root)
root.mainloop()
```
在这个画板应用中,我们使用了Tkinter库来创建GUI界面。我们创建了一个PaintApp类来管理画板应用的各种行为。在构造函数中,我们创建了一个Canvas对象来显示用户的绘画内容,并绑定了鼠标拖拽事件,当用户在画布上拖拽鼠标时,我们会调用draw()方法来绘制一个圆形,颜色由用户选择的颜色决定。我们还创建了一个按钮列表,让用户可以选择不同的颜色。最后,我们还创建了一个清空按钮,让用户可以清空画布。
这只是一个非常简单的画板实现示例,但是它可以为初学者提供一个基本的思路,如何使用Tkinter库来创建GUI界面,并实现简单的绘画功能。
阅读全文