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()


作者:suanite
鏈接:https://www.jianshu.com/p/bf592bd0a034
來源:簡書
著作權歸作者所有。商業轉載請聯系作者獲得授權,非商業轉載請注明出處。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM