2016-11-16 8 views
1

Недавно, проведя некоторые эксперименты и играя с GTK + Python2 (не включенная в Glade), я обнаружил какое-то интересное поведение, добавив в текст какой-то «стиль», который, по сути, является некоторый стандарт markup, который обычно принимается GTK как действительный ввод, НО если я попытаюсь добавить свойство «Мнемоника» к самому тексту при использовании разметки, он будет бросать GTK-WARNING, говоря, что что-то пошло не так (Markup не было применено) НО это было действительно применено!GTK: Ошибка при добавлении какого-либо стиля в текст

Некоторых изображений прояснить мою ситуацию:


Мнемоника: ложных & Разметки: Правда ----> OK

1.png


Мнемоник: Истинных & Markup: Ложные ----> OK

2.png


Мнемоника: Правда & Markup: Правда ----> GTK-WARNING (Но все хорошо ...)

3.png

4.png

воображаемой «Problema крестики»линия:

Label_1.set_markup_with_mnemonic('<span font_desc="Monospace 64" underline="none"> _Text </span>') 

Я твердо верю, что эта линия не должна быть проблемой, потому что, как я уже объяснял ранее, это только произойдет, если я пытаюсь добавить„Мнемоника & пометок“свойства, в то же времени и, тем не менее, он отображает и работает правильно.

Теперь для реального вопроса:

Есть ли возможный способ избавиться от этой бесполезной GTK-WARNING непосредственно из Python (не нуждаясь в использовании функции оболочки, как перенаправление/DEV/нуль, потому что я «Я пытаюсь сделать это приложение« защищенным от оболочки »)

Или если есть способ решить эту проблему?

Или либо обходным путем?

Подсказки:

  • Может быть, "_" означает, что что-то в разметке, которая работает как тег ("<i>")?
  • Ошибка GTK?
  • Поляна также страдает от этой редкой ситуации!

ответ

0

Ничего, это была какая-то странная ошибка внутри разметки .

Не используйте <span font_desc=something...

Вместо этого используйте <span font=something...

Таким образом, GTK не будут жаловаться больше. Может быть, это доказывает, что _ используется для чего-то еще в коде Pango Markup?