Glade: glib GError при попытке использовать атрибуты объекта

Я использую Ubuntu 14.10, но с рабочим столом lubuntu (LXDE), установленным вручную. Я разработал пользовательский интерфейс моего приложения Python, используя Glade. Все работает нормально, пока я не использую атрибуты (<attribute>) в файле XML; когда я делаю, я получаю следующее по вызову add_from_file:

gi._glib.GError: <input>:18:41 <attribute> requires attribute "value"

Строка 18 - это просто первое вхождение <attribute> тег в файле и выглядит так: <attribute name="weight">bold</attribute>,

Моя версия Python 3.4.3,

Что я могу сделать, чтобы решить эту проблему?

1 ответ

Решение

Как говорится в сообщении об ошибке, вы должны добавить атрибут с именем value,

<attribute name="weight" value="bold" />

В вашем определении

<attribute name="weight">bold</attribute>

только один атрибут с именем name, Текст между открывающим и закрывающим тегами не является атрибутом. Имя тега attribute не имеет ничего общего с необходимым атрибутом тега.


Структура действительного файла XML определена в файле DTD, например

<!DOCTYPE catalog PUBLIC "-//OASIS//DTD XML Catalogs V1.0//EN" "file:///usr/share/xml/schema/xml-core/catalog.dtd">

В этом определении, среди прочего, определены необходимые атрибуты для тегов. Если файл XML не соответствует этим определениям, он недействителен. В этом конкретном случае это может быть ошибка в Glade (генерирует недействительный XML) или вы не прошли предварительную проверку XML-документа.

Другие вопросы по тегам