- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Python GUI | 利用Tkinter制造签名设计软件!
由于Tkinter是Python自带的标准库,我们想要使用它的时候,只需直接导入即可。
from?tkinter?import?*
Tkinter支持的组件有:
对于简约的图形界面 Tkinter 还是能应付自若,不过相对于PyQt5做出的界面不够美观,相对于Pysimplegui则显得代码太笨重。这两个库埋个坑,后面开一篇单独引见。
今日的全体思路就是:先选择一个在线签名网站,找到接口模仿恳求,然后将生成的签名图片下载到本地,最终显示在 Tkinter 生成的 GUI 窗口上。
猎取共性签名图
在制造共性签名软件前,第一件事是先找到一个合适的网站,猎取他们的接口。
为啥说要找合适的网站呢?
某搜索引擎 一搜签名设计,那真的是花里胡哨啊,我的审美被一顿冲击。“乱花丛中”找了一圈,才挑到一个略微正常一点的网站。
网站地址:/b/13.htm
F12开发者模式,选择 Network。手动将配色调整为#000000黑色,背景调整为#FFFFFF白色,任凭输入一个名字,点击生成。
格外轻松,就可以找到该网站生成签名发送的恳求。如下所示:
废话不多说,直接上Python!
通过requests.post()恳求该网址,并导入参数。其中最重要的参数有两个:id对应的是带生成名字,id1对应的是艺术字体。
import?requestsfrom?urllib.request?import?urlretrieveurl?=?/b/re13.phpd?=?requests.post(url,?data={id:?测试签名,?zhenbi:?????????????????????????????id1:?904,?id2:?#FFFFFF,??????????????????????????????id4:?#000000,?id6:?#000000})d.content.decode(utf-8)
可以看到,post()前往的是带有链接的字符串。
轻松就可以从前往的字符串中,提取到生成的增长的共性签名图片。然后用urlretrieve()下载图片到本地,最终将其封装为自定义函数。
def?create_sign(word):????url?=?/b/re13.php????d?=?requests.post(url,?data={id:?word,?zhenbi:?????????????????????????????????id1:?904,?id2:?#FFFFFF,?id4:?#000000,?id6:?#000000})????myurl?=?d.content.decode(utf-8).split()[1]????urlretrieve(myurl,?word?+?.png)
后续在设计软件GUI界面时,直接调用这个函数,就可以直接生成共性签名了。
设计软件GUI界面
下载签名图片函数create_sign()已经创建好,工作实际就完成了一半。
剩下就是我们设计软件界面了,不妨先简约画个草图。
这里次要要用到:Label(标签控件)、Entry(输入控件)、 Button(按钮控件)、Frame(框架控件)以及选择字体时,需要用到的Combobox(下拉列表框)。
前面的控件都引见过,具体看这一篇 8000字,Tkinter具体使用教程!,这里只重点讲一下下拉列表框。
下拉列表框
Python 窗体(Tkinter)下拉列表框Combobox。它是在Tkinter模块下的ttk模块的一个部件,产生的效果是一个下拉列表框,它是GUI当中的一个装饰(widget)。当用户点击下拉列表猎取值的时候是从列表当中选取的,那么就会产生一个名为的虚拟大事。
其常见的几个参数有:
语法
作用
cv = tk.stringVar()
绑定变量
com = ttk.Combobox(root, textvariable=cv)
创建下拉框
com.pack()
放置下拉框
com[value] = (文本,文本)
设置下拉数据
com.current(索引)
设置默认值
demo = com.get()
变量接受值
com.bind(, 函数名)
下拉数据点击调用函数
简约用一个小例子挂念大家理解。
import?tkinterfrom?tkinter?import?ttkroot?=?tkinter.Tk()root.geometry(400x200)?xVariable?=?tkinter.StringVar()???#创建变量?com?=?ttk.Combobox(root,?textvariable
您可能关注的文档
- MongoDB 最常见的错误说法.docx
- mongodb分布式集群架构.docx
- MongoDB各种查询操作详解.docx
- MQ中消息重复消费及解决.docx
- MVCC思想在分布式系统中的应用.docx
- MVP模式在携程酒店的应用和扩展.docx
- MyBatis中的一级缓存和二级缓存介绍.docx
- MySQL 数据库设计小结.docx
- MySQL 索引失效的几种类型以及解决方式.docx
- MySQL中的锁(表锁、行锁).docx
- Python 之父为什么嫌弃 lambda 匿名函数?.docx
- Python 炫技操作:安装包的八种方法.docx
- Python 的上下文管理器是怎样设计的?.docx
- Python 爬取朋友圈最新方法!!(文末赠书).docx
- pythondocx无法处理 “doc格式” 文件,于是我这样做.......docx
- Pythongeopandas 中国地图绘制.docx
- Python中encode和encoding的区别是什么?.docx
- Python与Tableau相结合,万字长文搞定传统线下连锁店数据分析.docx
- Python中的基本函数及其常用用法简析.docx
- Python中的基础数据类型(String,Number)及其常用用法简析.docx
文档评论(0)