如何在ListBox Tkinter中把前r个字符的字符串加粗?

我试着在Tkinter中用ANSI转义序列”\033[1m]”在ListBox中放一个字符串,并在后面用ANSI转义序列”\033[0m”。

l = Listbox(root, width=33,font = ('Arial', 15))
a="aaaabc"
l.insert(END,"\033[1m" + a[0:r] + "\033[0m"+a[r:]")

我得到的是

SyntaxError: f-string expression part cannot include a backslash

解决方案:

你不能在listbox中使用ANSI转义序列,也没有办法改变一个项目中只有部分字符的属性。

如果你需要有丰富的格式,你将需要使用一个支持丰富格式的小组件。唯一实用的选择是一个 Text widget,这意味着你必须提供你自己的绑定来使它表现得像一个列表框。

本文来自投稿,不代表实战宝典立场,如若转载,请注明出处:https://www.shizhanbaodian.com/40143.html

(0)
上一篇 20小时前
下一篇 20小时前

相关推荐

发表评论

登录后才能评论