最近一直在进行Python的学习目前还属于初级阶段,正好学习到了GUI部分,tkinter这部分确实还是蛮需要联系的,于是就从网上找到了这么一个小程序的创意,制作个性二维码,主要就是有一个图片背景的二维码:


功能实现部分主要还是通过MyQR库来实现,实际上myqr.run()一个函数就可以实现功能,所以用来练习tkinter的使用还是不错的。

还是没有多好看,但是总归来说,自己还是比较满意自己的进步的。

上代码:

from MyQR import myqr
from tkinter import *
import tkinter.messagebox
import tkinter.filedialog
import os#背景图片浏览功能
def browse_picture():fileName = tkinter.filedialog.askopenfilename()fileName_picture.set(fileName)#保存路径浏览功能
def browse_save():fileName = tkinter.filedialog.asksaveasfilename()(filepath, name) = os.path.split(fileName)fileName_save.set(filepath)global tempfilenametempfilename += name#生成功能
def generate():content = e1.get()background = e2.get()save_location = e3.get()try:if background == '':myqr.run(words = content,save_dir = save_location,save_name = tempfilename,colorized = True)else:myqr.run(words = content,save_dir = save_location,picture = background,save_name = tempfilename,colorized = True)except ValueError as reason:tkinter.messagebox.showerror(title='错误', message = reason) root = Tk()
root.title('个性二维码')#标题
root.resizable(0,0)#不可调整大小tempfilename = ''#文本部分
Label(root, text="链接内容:").grid(row=0,padx = 5)
Label(root, text="图片背景:").grid(row=1,pady = 10)
Label(root, text="保存路径:").grid(row=2,padx = 5)#输入框部分
fileName_picture = StringVar()
fileName_save = StringVar()
e1 = Entry(root,width = 40)
e2 = Entry(root,width = 40,textvariable = fileName_picture)
e3 = Entry(root,width = 40,textvariable = fileName_save)
e1.grid(row = 0,column = 1,padx = 5,pady = 5)
e2.grid(row = 1,column = 1,padx = 5,pady = 5)
e3.grid(row = 2,column = 1,padx = 5,pady = 5)#按钮部分
b1 = Button(root,text = '生成',bd = 5,width = 10,command = generate).grid(row=4, column=0, sticky=W, padx=10, pady=5)
b2 = Button(root,text = '退出',bd = 5,width = 10,command = root.quit).grid(row=4, column=1, sticky=E, padx=10, pady=5)
b3 = Button(root,text = '浏览',bd = 2,width = 5, command = browse_picture).grid(row = 1,column=1,sticky=E)
b4 = Button(root,text = '浏览',bd = 2,width = 5, command = browse_save).grid(row = 2,column=1,sticky=E)root.mainloop()

为了制作出一个和平常使用的感觉差不多的使用方式,还是费了一番功夫,
主要在于保存路径Entry录入框这里

原本的方式 tkinter.filedialog 直接返回了一个包括文件名在内的路径,但保存路径实际上是到一个文件夹的,所以又调用了 os 库,os.path.spli函数对这部分路径进行分割,但是要让文件名不是一个摆设的话,又要想办法加上文件名,最后只好多加了一个名为 tempfilename 的字符串

原本在学习 tkinter 时,是漏掉了 tkinter.filedialog 和 tkinter.messagebox 两个部分的,还想怎么去重新编写两个窗口,警告提示还好,但是文件全路径浏览还真是发了一番愁。

利用Python中的tkinter和MyQR制作个性二维码转换器相关推荐

  1. myqr生成个性二维码

    使用MyQR成个性二维码 参考 实验楼:https://www.shiyanlou.com/courses/1126 github源码作者:https://github.com/sylnsfar/qr ...

  2. MyQR 生成个性二维码

    MyQR 生成个性二维码 python中有一个好玩的库,不仅可以生成各种花色的二维码,还可以生成动态二维码.MyQR是一个能够生成自定义二维码的第三方库,可以根据需要生成普通二维码.带图片的艺术二维码 ...

  3. 用MyQR 制作动态二维码

    每天一点点,记录工作中实操可行 在用python制作动态二维码时,出现了这个错误 ValueError: Wrong picture! Input a filename that exists and ...

  4. 趣味python之制作个性二维码

    平时看惯了黑白的普通二维码是不是觉得索然无味呢?今天我们就来学习如何利用自己超级喜欢的图片制作酷炫的二维码. 安装myqr模块,在命令行输入pip install myqr回车即可. C:\Windo ...

  5. python3 制作个性二维码

    1.准备工作: python 3.6 pip3 install MyQR 下载慢的话要换国内源 准备一些图片 包括 静态图和动态图 2.程序如下: #!/bin/env python3 # -*- c ...

  6. 如何做二维码?教你一招轻松制作个性二维码

    怎么制作二维码呢?在平常会接触很多的二维码,可能是跳转到商品购买链接,也可能是展示图片,文字,视频等等内容,那么这些二维码制作的方法是什么呢?其实想要制作这些类型的二维码的,方法都是一样的,通过二维码 ...

  7. 一行代码深度定制你的专属二维码:(amzqr、MyQR制作动态二维码)

    原文链接:http://www.juzicode.com/archives/6377 桔子菌逛github的时候发现一个好玩的Python库,可以用来制作带背景图片或动态图的二维码,这个库在pypi上 ...

  8. 【python小技巧】花式表白之动态二维码,这个gif有点帅哦

    hello大家好,我是诗一样的代码.我写的文章大多数都是一些"有趣的小玩意".今天教大家一个花式表白的绝活.女神见到了肯定乐坏了. 二维码的原理 二维码的原理是二进制运算,总的来说 ...

  9. 条码生成器如何批量制作彩色二维码

    打开中琅条码生成器,在文档设置窗口,点击"纸张"选项卡,纸张下拉选项选择"自定义大小",然后设置纸张尺寸. ​ 然后选择"布局"选项卡,手工 ...

最新文章

  1. python好找工作吗2017-2018年七大工作机会最多的编程语言和技术!
  2. mysql where 拼接_分一个mysql拼接where语句的Directive,并请教一个问题
  3. powershell 学习地址
  4. 获得Web目录URL
  5. python编程计算前30项的和_Python 程序员需要知道的 30 个技巧
  6. vs2017_enterprise正式版离线安装包bt下载
  7. 为什么说CLR是类型安全的
  8. 计算机网络可以分为点对点网络,计算机网络第1章习题答案
  9. 删除xcode中的描述文件的路径
  10. 运行深度学习代码时报错RuntimeError: CUDA out of memory. Tried to allocate 482.00 MiB
  11. ES6新语法-day02
  12. 2017年第八届蓝桥杯真题解析JavaB组
  13. 兴业研发晨会纪要2008年 10月 30日
  14. Linux虚拟内存空间分布
  15. 温度传感器的全球与中国市场2022-2028年:技术、参与者、趋势、市场规模及占有率研究报告
  16. 用函数统计各分数段人数c语言,如何使用Excel函数统计各分数段的人数(五种方法)...
  17. RK3288 NFS rootfs修改和操作(已验证)
  18. hg8010h的调试。
  19. 机器学习领域各领域必读经典综述论文整理分享
  20. 抢先报名 | gTech 职业大揭秘,17 日 19:30 等你来

热门文章

  1. 谷歌浏览器安卓版_安卓版 Chrome 82 将通过新的 Cookies 设置改善隐私
  2. 华为蓝牙耳机AM60连接win7的系统
  3. 强制history不记住敏感命令的方法
  4. SV学习笔记—随机化约束的概率
  5. 准考证打印系统关闭怎么办_准考证打印系统关闭怎么办_公务员考录专题网站...
  6. 微信分销系统,你使用了吗?
  7. jQuery仿淘宝鼠标悬停动画图标导航特效
  8. 华为服务器t3200安装系统,学校云教室教学信息化建设方案-腾创TC-T3200
  9. 号称下一代监控系统 来看看它有多牛逼
  10. 复旦学长:考完试的这段空档期应该怎么过