【发布时间】:2020-05-29 14:39:09
【问题描述】:
我正在创建一个基于 Tkinter 的 GUI,它有一个 Entry 小部件。我想将其文本的一部分加粗并更改其背景颜色。但我不知道我该怎么做。如果我使用 Text 小部件,我可以只使用标签,但看起来它们不能与 Entry 小部件一起使用:
此代码正在使用 Text 小部件:
import tkinter as tk
from tkinter.font import Font
root = tk.Tk()
text = tk.Text(root, font=Font(size=12))
text.insert("1.0", "I want THIS PART to be bold and have red background")
text.tag_configure("bold-and-red", font=Font(size=12, weight="bold"), background="red")
text.tag_add("bold-and-red", "1.7", "1.16")
text.pack()
root.mainloop()
一切正常(文本小部件已显示,“本部分”为粗体且背景为红色)
这段代码使用了 Entry 小部件:
import tkinter as tk
from tkinter.font import Font
root = tk.Tk()
entry = tk.Entry(root, font=Font(size=12))
entry.insert(0, "I want THIS PART to be bold and have red background")
entry.tag_configure("bold-and-red", font=Font(size=12, weight="bold"), background="red")
entry.tag_add("bold-and-red", 7, 16)
entry.pack()
root.mainloop()
我只是得到错误:
AttributeError: 'Entry' 对象没有属性 'tag_configure'
有没有办法为 Entry 小部件做我想做的事情?
【问题讨论】: