tkinter 打包成exe可执行文件

1.安装pyinstaller

pip install pyinstaller

2.打包

打开cmd,切换到需要打包的文件(demo.py)目录。执行
pyinstaller -F -w demo.py
生成的exe文件就在子目录dist中。-F表示指定打包后只生成一个exe格式的文件,-w表示窗口,无控制台。

3.修改exe图标

-i icon.ico 或者 --icon=icon.ico
图标文件放在要打包的文件同目录中。

4.替换tk默认图标

如果文件内采用自定义的图标替换tk默认图标,使用说明文档的方法root.iconbitmap(icon.ico)
替换tk图标后,打包的exe执行失败。原因是图标没有打进去,解决方法是打包成文件夹,或者把图标转化成base64数据。

这段程序可将图标gen.ico转换成icon.py文件里的base64数据
import base64
open_icon = open("gen.ico","rb")
b64str = base64.b64encode(open_icon.read())
open_icon.close()
write_data = "img = '{0}'".format(b64str)
f = open("icon.py","w+")
f.write(write_data)
f.close()

修改主程序:

import base64
from icon import img
import os

将import进来的icon.py里的数据转换成临时文件tmp.ico,作为图标
tmp = open('tmp.ico', 'wb+')
tmp.write(base64.b64decode(img))
tmp.close()
root.iconbitmap('tmp.ico')
os.remove('tmp.ico')
    
MainSerialToolUI(master=root)
root.resizable(False, False)
root.mainloop()
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 原文链接 我经常用python写些脚本什么的,有时候脚本写完以后,每次运行都得在IDE打开在运行,很麻烦,所以经常...
    g0阅读 11,329评论 0 2
  • 上次做了个ss密码一键自动更新,今天完善了一下,感觉功能上应该没问题了,顺便打包成了exe小程序。ss一键密码更新...
    皮丘吉尔阅读 28,050评论 3 25
  • 本文讲述的核心库:pyinstaller pyinstaller是一个很好用的python打包工具,在Window...
    m2fox阅读 7,645评论 0 1
  • 每一次做事情的时候都期待把它做好。质量完美。事实上完美的它尚未出现,永远是下一个。不开启小的,没有大的。不迈出第一...
    oulan阅读 1,090评论 0 0
  • 这是快速攒钱获得超额收益系列的第七篇文章,旨在通过借助定投指数基金来实现我们既攒钱又能获得超额收益的愿望。 上篇文...
    德飞商学院阅读 9,725评论 10 35

友情链接更多精彩内容