Поиск по блогу

четверг, 21 января 2010 г.

Добавление и удаление атрибутов узлов (вершин) в XML в Delphi (с использованием компонента TTreeView)

Предыдущая статья на тему — "Добавление и удаление вершин в XML (визуализация с помощью TTreeView)".

Продолжаю развивать начатую тему про редактирование XML. Сегодня будем добавлять и удалять атрибуты узлов.

Для этого создадим контекстное меню и привяжем его к объекту TValueListEditor, расположенному на закладке Attributes (исходники полученной на ранних этапах заготовки можно скачать). Напомню, что атрибуты и их значения попадают в ValueListEditor благодаря следующему участку кода в обработчике события OnClick экземпляра компонента TTreeView:

try
ValueListEditor.Strings.Clear;
for i := 0 to iNode.AttributeNodes.Count -1 do
ValueListEditor.InsertRow(iNode.AttributeNodes[i].NodeName,
iNode.AttributeNodes[i].Text,true);
except
end;


В меню создаем 2 пункта (Insert и Delete) и прописываем в их обработчиках:

среда, 13 января 2010 г.

Добавление и удаление узлов (вершин) в XML в Delphi (с использованием компонента TTreeView)

Приветствую всех подписчиков и читателей блога "Парсинг от А до Я"! Поздравляю с прошедшими праздниками и желаю в новом году терпения и усердия на пути к достижению поставленных целей. Надеюсь, что вы так же, как я, набрались сил и наполнились энтузиазмом за эти каникулы.

Сегодня появилось немного свободного времени, и я решила посвятить его развитию блога. Итак, проанализировав запросы, по которым приходят на этот ресурс, я решила дополнить его статьей о работе с XML в Delphi. Я уже затрагивала этот вопрос в материале "Отображение XML в виде дерева (TreeView): Delphi". К сожалению, тогда была невнимательной и как-то упустила комментарии о том, что в листинге отображены не все процедуры. В этот раз постараюсь исправиться и наряду с объяснениями выложить исходники того, о чем пойдет речь.

Итак, в той статье было описано отображение XML в TTreeView. А сейчас попытаемся сделать из просмотрщика редактор XML. Не сразу, постепенно. Понимаю, что как таковой самописный редактор XML вам не понадобится, тем более, что в сети можно найти много бесплатных утилит с полным набором требуемых функций, но новичкам будет полезно посмотреть, как сделать это своими руками. Вдруг в каком-нибудь вашем проекте вы решите поработать с XML... Собственно, я и решила написать этот пост про XML, так как стала переделывать RSSAdder: он будет работать не с ini-файлом, а с xml, и пользователям не придется совершать пляски с бубном, чтобы добавить в список новый агрегатор или изменить настройки у существующего.

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

Поделиться