python - 如何使用 tkinter 更改我的背景颜色?
问题描述
基本上我正在尝试更改此代码的背景颜色,但它没有做任何事情(它不会引发错误,但背景颜色不会改变),我尝试了很多不同的东西,但它没有不做任何事情,我需要做什么或这里有什么问题?
我尝试了几个不同的命令,但似乎没有任何效果。
有趣的是我做了一些测试代码来看看这是不是一个错字还是什么,在我的测试代码中背景颜色确实改变了,我不知道为什么它在主代码中不起作用,测试代码:
import tkinter
root = tkinter.Tk()
frame = tkinter.Frame(root)
frame.grid(column=0, row=0)
tkinter.Button(frame,text="Open file",command=None).grid(column=0, row=1 )
lab = tkinter.Label(frame, text="test test test test test test ")
lab.grid(column=0, row=2)
root.configure(background='black')
lab.configure(background='black', foreground='white')
frame.configure(background='black')
root.mainloop()
主要代码:
import tkinter as tk
from PIL import ImageTk, Image
import os
import requests
from io import BytesIO
root = tk.Tk()
root.title('PRUEBAAAAAASASASASA')
root.configure(bg='#00ff00')
img_url = "http://atlanticschools.net/wp-content/uploads/2017/05/PISA_LOGO-04.png"
response = requests.get(img_url)
img_data = response.content
img = ImageTk.PhotoImage(Image.open(BytesIO(img_data)))
panel = tk.Label(root, image=img)
panel.pack(side="bottom", fill="both", expand="yes")
root.configure(background='black')
root.mainloop()
主代码的输出只是图像和默认背景,而测试代码的输出确实改变了背景颜色
解决方案
您的panel
标签占用了根窗口的所有空间。因此,要更改背景颜色,请改为配置其背景颜色。
panel = tk.Label(root, image=img, bg="black")
推荐阅读
- node.js - 使用 nodejs Cheerio 深度嵌套元素标签抓取网站
- luajit - openresty中关于ffi函数调用的问题
- c# - 如何从 PXselector 获取值
- elasticsearch - 减去具有不同时间戳的两个文档之间的数字字段
- node.js - 使用 ShowTypingMiddleware 显示打字指示器不起作用
- laravel - 数据库不适用于克隆的 laravel 项目
- javascript - Chart.js 无法重新设置数据
- ruby-on-rails - 在 Rails 中从 Minitest 切换到 RSpec 时,如何让 `rails test`(或 `rake test`)运行 RSpec 测试?
- sql-server - 如何使用聚合查询结果作为另一个查询中的列,该查询使用 SQL Server 中的存储过程进行连接
- selenium - 当元素没有任何属性时如何创建xpath定位器