下面是编程之家 jb51.cc 通过网络收集整理的代码片段。
编程之家小编现在分享给大家,也给大家做个参考。
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,event.y) self.draw=0 else : self.canvas.create_rectangle(self.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,0) mybutton(root,1) mybutton(root,2) root.mainloop()
以上是编程之家(jb51.cc)为你收集整理的全部代码内容,希望文章能够帮你解决所遇到的程序开发问题。
如果觉得编程之家网站内容还不错,欢迎将编程之家网站推荐给程序员好友。