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-документа.