更改ttk条目小部件的背景颜色

问题描述 投票:0回答:2

我正在尝试更改 ttk 条目小部件的背景颜色。我读了这篇文章ttk Entry背景颜色,但我不太明白元素创建的东西。另外,它很旧。所以我想我应该问这里是否有更简单的方法来更改 ttk 小部件的背景颜色,或者如果没有,那么我会做什么来更改它?

我当前的代码只是定义一个条目小部件并设置其背景,如下所示:

colorEntry = ttk.Entry(root, background='black')

我也使用过样式,但也没有效果。

style = ttk.Style()
style.configure("TEntry", background='black')

这两种方法都不会对后台执行任何操作。如果我尝试更改任何其他属性(例如前景),它们就会起作用。 我在 Windows 10 上并使用 python 3.8.3。

python tkinter ttk
2个回答
3
投票

您可以使用

style.theme_use('clam')
,然后在
fieldbackground
参数中添加
Entry

片段:

import tkinter as tk
from tkinter import ttk


root = tk.Tk()
root.geometry("700x350")

style= ttk.Style()
style.theme_use('clam')
style.configure("TEntry", fieldbackground="red")

colorEntry = ttk.Entry(root)
colorEntry.pack(pady=30)
 

root.mainloop()

截图:

enter image description here


1
投票

创建 Style() 小部件时,您还需要将其应用到要更改样式的小部件。

colorEntry = ttk.Entry(root, style="TEntry")
© www.soinside.com 2019 - 2024. All rights reserved.