zoukankan      html  css  js  c++  java
  • 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()



  • 相关阅读:
    118/119. Pascal's Triangle/II
    160. Intersection of Two Linked Lists
    168. Excel Sheet Column Title
    167. Two Sum II
    172. Factorial Trailing Zeroes
    169. Majority Element
    189. Rotate Array
    202. Happy Number
    204. Count Primes
    MVC之Model元数据
  • 原文地址:https://www.cnblogs.com/navysummer/p/10614905.html
Copyright © 2011-2022 走看看