闲来无事,,,,一个“画图"
- 作者: 情到深处洞自开_情仔
- 来源: 51数据库
- 2022-08-12
import Tkinter
class mybutton:
def __init__(self,root,canvas,label,types):
self.root=root
self.canvas=canvas
self.label=label
if types==0:
button=Tkinter.Button(root,text='Drawline',command=self.Drawline)
elif types==1:
button=Tkinter.Button(root,text='Drawarc',command=self.Drawarc)
else :
button=Tkinter.Button(root,text='Drawrect',command=self.Drawrect)
button.pack(side='right')
def Drawline(self):
self.label.text.set('Draw line')
self.canvas.setstatus(0)
def Drawarc(self):
self.label.text.set('Draw arc')
self.canvas.setstatus(1)
def Drawrect(self):
self.label.text.set('Draw rect')
self.canvas.setstatus(2)
class mycanvas:
def __init__(self,root):
self.status=0
self.draw=0
self.root=root
self.canvas=Tkinter.Canvas(root,bg='white',width=600,height=480)
self.canvas.pack()
self.canvas.bind('<ButtonRelease-1>',self.Draw)
self.canvas.bind('<Button-2>',self.Exit)
self.canvas.bind('<Button-3>',self.Del)
def Draw(self,event):
if self.draw==0:
self.x=event.x
self.y=event.y
self.draw=1
else:
if self.status==0:
self.canvas.create_line(self.x,self.y,event.x,event.y)
self.draw=0
elif self.status==1:
self.canvas.create_arc(self.x,self.y,event.x,event.y)
self.draw=0
else :
self.canvas.create_rectangle(self.x,self.y,event.x,event.y)
self.draw=0
def Del(self,event):
items=self.canvas.find_all()
for item in items:
self.canvas.delete(item)
def Exit(self):
self.root.quit()
def setstatus(self,status):
self.status=status
class mylabel:
def __init__(self,root):
self.root=root
self.canvas=canvas
self.text=Tkinter.StringVar()
self.text.set('draw line')
self.label=Tkinter.Label(root,textvariable=self.text,fg='red',width=50)
self.label.pack(side='left')
root=Tkinter.Tk()
canvas=mycanvas(root)
label=mylabel(root)
mybutton(root,canvas,label,0)
mybutton(root,canvas,label,1)
mybutton(root,canvas,label,2)
root.mainloop()
推荐阅读
热点文章
Discord.py(重写)on_member_update 无法正常工作
0
Discord.py 在 vc 中获取用户分钟数
0
discord.py 重写 |为我的命令出错
0
Discord.py rewrite 如何 DM 命令?
0
播放音频时,最后一部分被切断.如何解决这个问题?(discord.py)
0
在消息删除消息 Discord.py
0
如何使 discord.py 机器人私人/直接消息不是作者的人?
0
(Discord.py) 如何获取整个嵌入内容?
0
Discord bot 尽管获得了许可,但不能提及所有人
0
Discord.py discord.NotFound 异常
0
