Переменная в разметке Pango

#pango #pygobject

#pango #pygobject

Вопрос:

Я использую Python 2.7 и PyGObject 3.0. (Это ОЧЕНЬ важно! синтаксис PyGObject изменился с версии 3.0!)

Мне нужно поместить переменную вместо строки в разметке, чтобы выходные данные были отформатированы. Это код, который у меня есть для форматирования стандартной строки в метке.

 lbl_tile1.set_markup('<span font_family="serif" font = "48" weight = "bold">W</span>')
 

Однако мне нужно использовать данные в переменной. Следующее изменяет текст, но удаляет форматирование.

 lbl_tile1.set_markup('<span font_family="serif" font = "48" weight = "bold">W</span>')
lbl_tile1.set_text(t[0])
 

Мне нужно получить переменную «t[0]» вместо «W» в форматированной строке. Как мне это сделать?

Ответ №1:

Вам не нужно использовать метод set_text. Вы можете поместить данные в метод set_markup.

Например:

 lbl_tile1.set_markup('<span font_family="serif" font = "48" weight = "bold">{0}</span>'.format(t[0]))
 

Комментарии:

1. По какой-то причине этот ответ никогда не появлялся в моем канале… Спасибо! Это действительно помогает.