概述
虽然Python的强项在人工智能,数据处理方面,但是对于日常简单的应用,Python也提供了非常友好的支持(如:Tkinter),本文主要一个简单的画图小软件,简述Python在GUI(图形用户界面)方面的应用,仅供学习分享使用,如有不足之处,还请指正。
设计思路
- 页面布局:主要分为上下两部分 a. 绘图区域,本例以Canvas实现 b. 下部:功能区,由按钮实现
- 事件监听:通过给功能按钮绑定事件,来实现不同的功能,如:绘线,绘矩形等功能。
- 绘图区域:监听鼠标左键的按下(开始绘图)和抬起(停止绘图),再根据不同的按钮实现绘制不同的图形。
涉及知识点
- 开发工具:Python3.7 , PyCharm2019
- Tkinter 是 Python 的标准 GUI 库。Python 使用 Tkinter 可以快速的创建 GUI 应用程序。
- Canvas控件提供了一个自定义的绘图区域,可以通过不同的函数来绘制不同的图形。
- 绘制直线 create_line(self.x, self.y, event.x, event.y, fill=self.fgcolor)
- 绘制带箭头的直线 create_line(self.x, self.y, event.x, event.y, arrow=LAST, fill=self.fgcolor)
- 绘制矩形 create_rectangle(self.x, self.y, event.x, event.y, outline=self.fgcolor)
- 绘制曲线,是通过绘制不同的点来实现的
- 清除图形 drawpad.delete(‘all’)
- Button 按钮控件,通过绑定(bind)不同的监听事件来实现不同的功能。
- name属性设置按钮的名称,
- text属性设置按钮的显示文本。
- bind 绑定事件
示例效果图
本例主要实现绘制直线,带箭头的直线,曲线,矩形,清除等功能,如下所示:
核心代码
在本例中,主要功能如下:
创建画板
创建按钮
绑定事件
功能实现
快捷键的实现
快捷键功能实现
有需要的朋友,可点击链接下载整体代码,如下所示:
源码链接
备注
不积跬步,无以至千里;不积小流,无以成江海;锲而舍之,朽木不折,锲而不舍,金石可镂。
文章知识点与官方知识档案匹配,可进一步学习相关知识Python入门技能树首页概览208266 人正在系统学习中
微信公众号 一名十多年老程序员,分享工作学习见闻技术来源:小六公子
声明:本站部分文章及图片转载于互联网,内容版权归原作者所有,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!