翼度科技»论坛 编程开发 python 查看内容

修改python打包后的窗体图标、任务栏图标、exe图标

5

主题

5

帖子

15

积分

新手上路

Rank: 1

积分
15
前言


  • 我python开发的GUI界面(图形用户界面)一直是tkinter,打包exe一直是Pyinstaller。但是打包出来的exe图标、状态栏图标、窗体左上角图标一直是默认的羽毛,我想自定义。
效果


  • 最后使用base64创建临时ico解决了该问题

步骤


  • 创建icoToBase64.py,内容如下:
  1. import base64
  2. # ico转base64
  3. open_icon = open("./img/logo.ico", "rb")
  4. b64str = base64.b64encode(open_icon.read())  # 转换为base64编码
  5. open_icon.close()
  6. write_data = "imgBase64 = %s" % b64str
  7. f = open("./img/logo.py", "w+")
  8. f.write(write_data)# 写入文件
  9. f.close()
复制代码

  • 创建img目录,将准备好的logo.ico放入img目录中。
  • 运行icoToBase64.py文件,将ico转换为base64,写入py文件,得到logo.py。
  • 引入logo.py,使用base64创建临时logo。
  1. from img.logo import imgBase64
  2. # 创建临时logo
  3. def createTempLogo():  # 处理图片
  4.     tmp = open("temp.ico", "wb+")  # 创建temp.ico临时文件
  5.     tmp.write(base64.b64decode(imgBase64))  # 写入img的base64
  6.     tmp.close()  # 关闭文件
  7. ...
  8. createTempLogo()
  9. root.wm_iconbitmap("temp.ico")# 使用wm_iconbitmap引入创建的ico
  10. if os.path.exists("temp.ico"):
  11.    os.remove("temp.ico")# 创建logo后需删除临时logo
  12. ...
复制代码
结语

最后不管是直接运行还是打包exe后运行,会发现窗体图标、任务栏图标、exe图标都变成了自定义的图标。

原文链接:https://xiblogs.top/?id=65

来源:https://www.cnblogs.com/xi12/p/17876762.html
免责声明:由于采集信息均来自互联网,如果侵犯了您的权益,请联系我们【E-Mail:cb@itdo.tech】 我们会及时删除侵权内容,谢谢合作!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x

举报 回复 使用道具