电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁技術文章
文章詳情頁

Python3.8 + Tkinter: Button設置image屬性不顯示的問題及解決方法

瀏覽:63日期:2022-07-28 13:19:57

Bug如題目所描述。嘗試過將按鈕的image指向的變量del_icon設置為global全局變量,但是不成功,會提示如“

AttributeError: ’PhotoImage’ object has no attribute ’_PhotoImage__photo’

”的錯誤。代碼1是導致bug的源頭。

代碼1:

#!/bin/env python3from PIL import ImageTkimport tkinter as tk...self.del_button = tk.Button(self.frame, text=’DEL’, width=20, height=20)self.del_button.config(image=ImageTk.PhotoImage(resize(os.getcwd() + ’/delete.png’, 0)))self.del_button.bind(’<Button-1>’, self.delete_selected_image)self.del_button.grid(row=0, column=0, sticky=tk.W)

Python3.8 + Tkinter: Button設置image屬性不顯示的問題及解決方法

結果刪除按鈕不顯示image,按鈕上顯示空白:

Python3.8 + Tkinter: Button設置image屬性不顯示的問題及解決方法 del_button的image不顯示

嘗試將del_button的image指向的變量設置為局部變量,即下面所展示的代碼2。

代碼2:

#!/bin/env python3from PIL import ImageTkimport tkinter as tk...self.del_button = tk.Button(self.frame, text=’DEL’, width=20, height=20)del_icon = ImageTk.PhotoImage(resize(os.getcwd()+’/delete.png’, 0))self.del_button.config(image=del_icon)self.del_button.bind(’<Button-1>’, self.delete_selected_image)self.del_button.grid(row=0, column=0, sticky=tk.W)

Python3.8 + Tkinter: Button設置image屬性不顯示的問題及解決方法

結果刪除按鈕的image顯示正常:

Python3.8 + Tkinter: Button設置image屬性不顯示的問題及解決方法 del_button的image顯示正常

筆記:

不明所以的bug。判斷潛在原因是:GC的問題。image屬性需要指向明確的內存地址。方法返回的臨時變量地址調用后即被回收,導致image指向空地址。

resize()的代碼:

#!/bin/env python3from PIL import Image def resize(path): image = Image.open(path) raw_width, raw_height = image.size[0], image.size[1] min_height = 20 min_width = int(raw_width * min_height / raw_height) return image.resize((min_width, min_height))

到此這篇關于Python3.8 + Tkinter: Button設置image屬性不顯示的問題的文章就介紹到這了,更多相關Python Tkinter按鈕不顯示內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: Python 編程
相關文章:
主站蜘蛛池模板: PC构件-PC预制构件-构件设计-建筑预制构件-PC构件厂-锦萧新材料科技(浙江)股份有限公司 | 青岛球场围网,青岛车间隔离网,青岛机器人围栏,青岛水源地围网,青岛围网,青岛隔离栅-青岛晟腾金属制品有限公司 | 电磁辐射仪-电磁辐射检测仪-pm2.5检测仪-多功能射线检测仪-上海何亦仪器仪表有限公司 | 富森高压水枪-柴油驱动-养殖场高压清洗机-山东龙腾环保科技有限公司 | 超声骨密度仪-动脉硬化检测仪器-人体成分分析仪厂家/品牌/价格_南京科力悦 | 生物除臭剂-除味剂-植物-污水除臭剂厂家-携葵环保有限公司 | 爱佩恒温恒湿测试箱|高低温实验箱|高低温冲击试验箱|冷热冲击试验箱-您身边的模拟环境试验设备技术专家-合作热线:400-6727-800-广东爱佩试验设备有限公司 | 深圳3D打印服务-3D打印加工-手板模型加工厂-悟空打印坊 | 亚洲工业智能制造领域专业门户网站 - 亚洲自动化与机器人网 | 高压直流电源_特种变压器_变压器铁芯-希恩变压器定制厂家 | 全自动固相萃取仪_高通量真空平行浓缩仪-勤业永为 | 锂电混合机-新能源混合机-正极材料混料机-高镍,三元材料混料机-负极,包覆混合机-贝尔专业混合混料搅拌机械系统设备厂家 | 网站建设,北京网站建设,北京网站建设公司,网站系统开发,北京网站制作公司,响应式网站,做网站公司,海淀做网站,朝阳做网站,昌平做网站,建站公司 | 除湿机|工业除湿机|抽湿器|大型地下室车间仓库吊顶防爆除湿机|抽湿烘干房|新风除湿机|调温/降温除湿机|恒温恒湿机|加湿机-杭州川田电器有限公司 | 流水线电子称-钰恒-上下限报警电子秤-上海宿衡实业有限公司 | 山东锐智科电检测仪器有限公司_超声波测厚仪,涂层测厚仪,里氏硬度计,电火花检漏仪,地下管线探测仪 | 小区健身器材_户外健身器材_室外健身器材_公园健身路径-沧州浩然体育器材有限公司 | 手持式浮游菌采样器-全排二级生物安全柜-浙江孚夏医疗科技有限公司 | 防火窗_耐火窗_防火门厂家_防火卷帘门-重庆三乐门业有限公司 | 智成电子深圳tdk一级代理-提供TDK电容电感贴片蜂鸣器磁芯lambda电源代理经销,TDK代理商有哪些TDK一级代理商排名查询。-深圳tdk一级代理 | 微水泥_硅藻泥_艺术涂料_艺术漆_艺术漆加盟-青岛泥之韵环保壁材 武汉EPS线条_EPS装饰线条_EPS构件_湖北博欧EPS线条厂家 | 冲锋衣滑雪服厂家-冲锋衣定制工厂-滑雪服加工厂-广东睿牛户外(S-GERT) | 便携式谷丙转氨酶检测仪|华图生物科技百科 | 薪动-人力资源公司-灵活用工薪资代发-费用结算-残保金优化-北京秒付科技有限公司 | 杰福伦_磁致伸缩位移传感器_线性位移传感器-意大利GEFRAN杰福伦-河南赉威液压科技有限公司 | 行吊_电动单梁起重机_双梁起重机_合肥起重机_厂家_合肥市神雕起重机械有限公司 | 水厂污泥地磅|污泥处理地磅厂家|地磅无人值守称重系统升级改造|地磅自动称重系统维修-河南成辉电子科技有限公司 | 电主轴,车床电磨头,变频制动电机-博山鸿达特种电机 | 生鲜配送系统-蔬菜食材配送管理系统-连锁餐饮订货配送软件-挪挪生鲜供应链管理软件 | 东莞注册公司-代办营业执照-东莞公司注册代理记账-极刻财税 | 化工ERP软件_化工新材料ERP系统_化工新材料MES软件_MES系统-广东顺景软件科技有限公司 | TTCMS自助建站_网站建设_自助建站_免费网站_免费建站_天天向上旗下品牌 | 中红外QCL激光器-其他连续-半导体连续激光器-筱晓光子 | 一体化污水处理设备-一体化净水设备-「山东梦之洁水处理」 | 不锈钢拉手厂家|浴室门拉手厂家|江门市蓬江区金志翔五金制品有限公司 | 地磅-地秤-江阴/无锡地磅-江阴天亿计量设备有限公司_ | 硬质合金模具_硬质合金非标定制_硬面加工「生产厂家」-西迪技术股份有限公司 | 辐射仪|辐射检测仪|辐射巡测仪|个人剂量报警仪|表面污染检测仪|辐射报警仪|辐射防护网 | 济南拼接屏_山东液晶拼接屏_济南LED显示屏—维康国际官网 | 防爆型气象站_农业气象站_校园气象站_农业四情监测系统「山东万象环境科技有限公司」 | pos机办理,智能/扫码/二维码/微信支付宝pos机-北京万汇通宝商贸有限公司 |