当前位置: 首页 > news >正文

pyinstall tkinter image

tkinter 支持的图片格式:GIF PPM PGM
当图片是这3种格式的时候,
在c:\python27\scripts目录下的name.spec 加上下面这一行就能成功加入图片
a.datas += [('t1.gif','C:\Users\***\PycharmProjects\untitled2\t1.gif','DATA')]
再运行pyinstaller.exe name.spec即可成功

如果图片不是这3种格式

当前目录下进入python shell,敲入以下命令
1.以二进制方式打开icon.ico
2.进行base64编码转换
3.以变量形式保存在icon.py 中

import base64

with open('t.ico', 'rb') as f:
    b64str = base64.b64encode(f.read())

with open('icon.py', 'w+') as f:
    write_data = "img = '%s'" % b64str
    f.write(write_data)

这里可以当前目录下出现了icon.py 文件,里面只有一行就是img变量等于一串base64编码

hello.py
icon.ico
icon.py

修改 hello.py源码,导入icon.py中的img, 创建一个临时的tmp.ico文件作为图标引入后删除即可

from Tkinter import *
import base64
from icon import img

root = Tk()
tmp = open("tmp.ico","wb+")
tmp.write(base64.b64decode(img))
tmp.close()
root.iconbitmap("tmp.ico")
os.remove("tmp.ico")

Label(root, text="hello world").pack()
root.mainloop()

最后就是pyinstaller打包
pyinstaller -i icon.ico -w -F hello.py

method of decode

pprint.pprint(eval(a))

转载于:https://www.cnblogs.com/otfsenter/p/6337184.html

相关文章:

  • CSS快速入门
  • 强力优化Rancher k8s中国区的使用体验
  • Windows 8 Platform (三) Windows 8 Developer Preview
  • 关于责任和业务(r11笔记第60天)
  • 如何测试网页登录
  • C#分部类型解析
  • 博为峰Java技术文章 ——JavaSE Swing JTabbedPane选项卡面板II
  • JS 设置盒子div 跳转
  • 数组操作函数总结
  • 在Unity(C#)下实现Lazy Theta*寻路
  • 双显卡笔记本安装CUDA+theano、tensorflow环境
  • Zabbix3.x 服务安装、配置及常见问题处理
  • Material Design学习之 Camera
  • Perl 获得当前路径
  • 【254】◀▶IEW-Unit19
  • (十五)java多线程之并发集合ArrayBlockingQueue
  • [原]深入对比数据科学工具箱:Python和R 非结构化数据的结构化
  • 【5+】跨webview多页面 触发事件(二)
  • 30秒的PHP代码片段(1)数组 - Array
  • Android 初级面试者拾遗(前台界面篇)之 Activity 和 Fragment
  • CAP理论的例子讲解
  • Druid 在有赞的实践
  • gops —— Go 程序诊断分析工具
  • happypack两次报错的问题
  • HTTP--网络协议分层,http历史(二)
  • Java到底能干嘛?
  • Laravel 菜鸟晋级之路
  • python学习笔记-类对象的信息
  • springboot_database项目介绍
  • vue:响应原理
  • 百度贴吧爬虫node+vue baidu_tieba_crawler
  • 从零搭建Koa2 Server
  • 分布式熔断降级平台aegis
  • 高度不固定时垂直居中
  • 规范化安全开发 KOA 手脚架
  • 坑!为什么View.startAnimation不起作用?
  • 理解 C# 泛型接口中的协变与逆变(抗变)
  • 聊聊flink的TableFactory
  • 前端技术周刊 2018-12-10:前端自动化测试
  • 算法-图和图算法
  • 想使用 MongoDB ,你应该了解这8个方面!
  • 一个普通的 5 年iOS开发者的自我总结,以及5年开发经历和感想!
  • 《码出高效》学习笔记与书中错误记录
  • FaaS 的简单实践
  • ​如何使用ArcGIS Pro制作渐变河流效果
  • ​水经微图Web1.5.0版即将上线
  • ​直流电和交流电有什么区别为什么这个时候又要变成直流电呢?交流转换到直流(整流器)直流变交流(逆变器)​
  • !!【OpenCV学习】计算两幅图像的重叠区域
  • #pragam once 和 #ifndef 预编译头
  • #中国IT界的第一本漂流日记 传递IT正能量# 【分享得“IT漂友”勋章】
  • (5)STL算法之复制
  • (arch)linux 转换文件编码格式
  • (黑客游戏)HackTheGame1.21 过关攻略
  • (十五)devops持续集成开发——jenkins流水线构建策略配置及触发器的使用
  • (四)Controller接口控制器详解(三)