python - 更改 tkhtmlview.HTMLLabel 的背景

标签 python tkinter

我有一个 tk.Frame,它的背景颜色设置为白色。在此框架内,我放置了一个 HTMLLabel。但是 html 标签有一个默认的灰色背景颜色。有没有办法让它也变白?我尝试设置 HTMLLabel 的背景,但它保持灰色。

import tkinter as tk
from tkhtmlview import HTMLLabel

root = tk.Tk()

root.geometry("600x400")
root.title("HtmlView test")
root.update()

mainFrame = tk.Frame(root, bg="#ffffff", padx=20, pady=20)
mainFrame.pack(expand=1, fill="both")

htmlText = "<div style='background-color: #ffffff'>Lorem ipsum text</div>"
textFrame = HTMLLabel(mainFrame, bg="#ffffff", html=htmlText, padx=10, pady=30)
textFrame.pack(expand=1, fill="both")

root.mainloop()

这是它的样子:

Background color of a HTMLLabel

最佳答案

HTMLLabel 背景的正确选项名称似乎不是bg,而是backgroundbgbd 选项可用(可能是继承的),但我看不到它们的任何效果。 无论如何,高亮边框的颜色和粗细选项都有影响(见图)。为了这里的完整性,稍微改变了整个代码:

import tkinter as tk
from tkhtmlview import HTMLLabel

root = tk.Tk()

root.geometry("600x400")
root.title("HtmlView test")
root.update()

mainFrame = tk.Frame(root, bg="#ffffff", padx=20, pady=20)
mainFrame.pack(expand=1, fill="both")

htmlText = "<div style='background-color: #ffffff'>Lorem ipsum text</div>"
# textFrame = HTMLLabel(mainFrame, bg="#ffffff", html=htmlText, padx=10, pady=30)
textFrame = HTMLLabel(mainFrame, highlightthickness=10, highlightbackground='beige', bg="#000000", bd=10, background="#ffffff", html=htmlText, padx=10, pady=30, )
# print(dir(textFrame))
textFrame.pack(expand=1, fill="both")

root.mainloop()

HTMLLabel with white background

关于python - 更改 tkhtmlview.HTMLLabel 的背景,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/72650890/

相关文章:

python - 单击第二个按钮(相同的按钮)Selenium python

python - 使用 NumPy 填充形状/轮廓

python - 如何使复选框/框单击更改文本文件? (使用Python和tkinter库)

python - 无法在 Tkinter 中更改光标

python - Python 中 Tkinter Canvas 上 .jpg 图像的滚动条

python - 使用 RecycleView 时设置列宽

python - 如何更新可滚动、matplotlib 和 multiplot 中的艺术家

python - Tensorflow GradientDescentOptimizer - 它如何连接到 tf.Variables?

python - 使用 Tkinter 在消息框中显示进度

python-2.7 - 用于在窗口上打印串行数据的 python 代码。