Текущий архив: 2005.12.11;
Скачать: CL | DM;
ВнизПоиск в TXMLDocument Найти похожие ветки
← →
Шурик Ш (2005-10-24 11:59) [0]Задавал этот вопрос в пятницу, но, к сожалению, не получил ожидаемого ответа. Видно, спрашивал не тем языком.
Итак, попробую перефразировать вопрос:
Я записываю содержимое XML-файла в TTreeView. Записываю только элементы (Nоde) и пропускаю атрибуты.
Внимание вопрос, как при выборе пользователем элемента TTreeView найти соответствующий ему элемент в TXMLDocument для того, чтобы вывести на экран атрибуты?
← →
umbra © (2005-10-24 14:01) [1]не тестировал, но принцип такой:
procedure GetNodeAttrs(parents: TStrings);
var
mynode: IXMLNode;
attrs : WideString;
lev: Integer;
tvnode : TTreeNode;
begin
parents.Clear;
lev := TreeView1.Selected.Parent.Level;
parents.Add(TreeView1.Selected.Text);
while lev > 0 do
begin
tvnode := TreeView1.Selected.Parent;
parents.Add(tvnode.Text);
dec(lev);
end;
mynode := XMLDocument1.DocumentElement;
for lev := parents.Count - 1 downto 0 do
mynode := mynode.ChildNodes.FindNode(widestring(parents[lev]));
parents.Clear;
for lev := 1 to mynode.AttributeNodes.Count do
begin
attrs := mynode.AttributeNodes[lev].Text + "=" + mynode.Attributes[mynode.AttributeNodes[lev].Text];
parents.Add(attrs);
end;
end;
Страницы: 1 вся ветка
Текущий архив: 2005.12.11;
Скачать: CL | DM;
Память: 0.44 MB
Время: 0.037 c