返回顶部

收藏

Canvas paint program: drag and draw

更多
from Tkinter import *

class PaintBox( Frame ):
   def __init__( self ):
      Frame.__init__( self )
      self.pack( expand = YES, fill = BOTH )
      self.master.title( 'A simple paint program' )
      self.master.geometry( '300x150' )

      self.message = Label( self, text = 'Drag the mouse to draw' )
      self.message.pack( side = BOTTOM )

      # create Canvas component
      self.myCanvas = Canvas( self )
      self.myCanvas.pack( expand = YES, fill = BOTH )

      # bind mouse dragging event to Canvas
      self.myCanvas.bind( '<B1-Motion>', self.paint )

   def paint( self, event ):
      x1, y1 = ( event.x - 4 ), ( event.y - 4 )
      x2, y2 = ( event.x + 4 ), ( event.y + 4 )
      self.myCanvas.create_oval( x1, y1, x2, y2, fill = 'red' )

def main():
   PaintBox().mainloop()

if __name__ == '__main__':
   main()

标签:Python,Event

收藏

0人收藏

支持

0

反对

0

相关聚客文章
  1. xingtingyang 发表 2015-04-01 03:38:50 交集法生成破的空心球形
  2. 博主 发表 2013-10-27 00:00:00 K-Means Using Python
  3. 6david9 发表 2015-03-25 07:16:41 Python 脚本解析 ipa 文件
  4. bobshi 发表 2014-07-15 11:48:32 mac中安装mysql-python遇到的问题
  5. rfyiamcool 发表 2015-06-01 15:54:36 如何实现python的mysql连接池并加入缓存过期
  6. 博主 发表 2015-05-24 09:42:48 python3之getopt模块便用
  7. 南柯一梦 发表 2014-08-04 03:23:00 解决使用PIL “decoder jpeg not available”错误
  8. akun 发表 2014-08-12 14:32:20 用Sphinx编写技术文档
  9. IT辰逸 发表 2015-06-30 08:00:14 Django Ajax 跨域请求
  10. 博主 发表 2012-11-22 20:58:52 Python采集博客园的新闻资讯
  11. 博主 发表 2015-07-07 06:35:25 创业公司都在使用的3款Python库
  12. exoticknight 发表 2015-07-01 15:16:30 记一次奇怪的爬虫经历