Как выделить строку из первых r символов жирным шрифтом в ListBox Tkinter? - PullRequest
0 голосов
/ 09 мая 2020

Я попытался поместить строку в ListBox в Tkinter, используя escape-последовательность ANSI «\ 033 [1m» до и используя escape-последовательность 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

1 Ответ

0 голосов
/ 09 мая 2020

Вы не можете использовать escape-последовательности ANSI в списке, и нет никакого способа изменить атрибуты только некоторых символов в элементе.

Если вам нужно иметь расширенное форматирование, вам нужно будет использовать виджет, поддерживающий богатое форматирование. Единственный практический выбор - это виджет Text, что означает, что вам придется предоставить свои собственные привязки, чтобы он вел себя как список.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...