如何更改列表框中项的字体样式?我假设它会使用listbox[i].itemconfig(),但THIS暗示字体样式不是一个选项。
我还阅读了THIS,这意味着您必须首先获取项目的字体,然后更改它并将其设置为新字体。但是,如何使用列表框中的单个项目来完成此操作?
我正在尝试使用一个按钮将列表框中的选定项设置为“master”(这并不重要,这意味着什么),为了达到这些目的,只需要以某种方式突出显示(最好不要使用前景/背景/任何颜色)。下面是我的尝试,它根本不起作用,因为它是不完整的。我不确定如何与列表框中特定项目的字体交互。请随时提供更好的方法。
我很抱歉没有提供更多或更好的示例代码。我不知道该如何尝试。我也在使用THIS作为参考。(我很难理解tkFont作为一个包,以及为什么/如何在tk.font上使用它...)
def set_master(self):
the_selection = self.the_listbox.curselection()
for the_index, the_item in enumerate(self.the_listbox):
f = tkFont.Font(font=the_item.cget("font"))
if int(the_selection) == int(the_index):
f.configure(underline=True, weight='bold', slant='italic')
else:
f.configure(underline=False, weight='normal', slant='roman')
#the_item.set_font(f) <--This is pseudocode
return发布于 2018-12-01 00:21:14
不能更改列表框中单个项目的字体。
如果您需要像列表框一样工作,但又提供更改单个项目字体的功能,则可以使用ttk.Treeview小部件。
https://stackoverflow.com/questions/53560889
复制相似问题