Как можно программно редактирвать объект Tree View
Как пожно во время работы программы, например добавить новый элемент в Tree View, добавить новый подэлемент, удалить элемент, ну вобщем как сделать редактирвание Tree View во время работы программы????
Цитата:
Originally posted by Dissident
Как пожно во время работы программы, например добавить новый элемент в Tree View, добавить новый подэлемент, удалить элемент, ну вобщем как сделать редактирвание Tree View во время работы программы????
Как пожно во время работы программы, например добавить новый элемент в Tree View, добавить новый подэлемент, удалить элемент, ну вобщем как сделать редактирвание Tree View во время работы программы????
А справку по TTreeView и TTreeNode почитать не пробовал. Там есть и про Add и про AddChild....
Цитата:
Originally posted by _kolyan
А справку по TTreeView и TTreeNode почитать не пробовал. Там есть и про Add и про AddChild....
А справку по TTreeView и TTreeNode почитать не пробовал. Там есть и про Add и про AddChild....
Да я смотрел, не пойму структуру функции, точнее что туда надо вписывать.. :(
при добавлении первого узла, то есть если дерево еще пусто, параметр Node должен быть равен NULL, а потом должен содержать адрес последнего узла нулевого уровня:
TTreeNode *Node = NULL;
Node = TreeView->Items->Add(Node, "New1");
Node = TreeView->Items->Add(Node, "New2");
Node = TreeView->Items->Add(Node, "New3");
добавление узла ненулевого уровня:
TreeView->Items->AddChild(Node, "New");
где Node - узел-родитель.
Цитата:
Originally posted by Relax
добавление узла нулевого уровня (root):
при добавлении первого узла, то есть если дерево еще пусто, параметр Node должен быть равен NULL, а потом должен содержать адрес последнего узла нулевого уровня:
TTreeNode *Node = NULL;
Node = TreeView->Items->Add(Node, "New1");
Node = TreeView->Items->Add(Node, "New2");
Node = TreeView->Items->Add(Node, "New3");
добавление узла ненулевого уровня:
TreeView->Items->AddChild(Node, "New");
где Node - узел-родитель.
добавление узла нулевого уровня (root):
при добавлении первого узла, то есть если дерево еще пусто, параметр Node должен быть равен NULL, а потом должен содержать адрес последнего узла нулевого уровня:
TTreeNode *Node = NULL;
Node = TreeView->Items->Add(Node, "New1");
Node = TreeView->Items->Add(Node, "New2");
Node = TreeView->Items->Add(Node, "New3");
добавление узла ненулевого уровня:
TreeView->Items->AddChild(Node, "New");
где Node - узел-родитель.
А можно сделать что-бы добавленные элементы оставались, а то они исчезают при повторном запуски программы? И как можно узнать адрес узла родителя для добавления подэлемента, вобщем Node, как узнать???
а то что пр повторном запуске программы все исчезает - это естественно - ведь вся структура хранится только в оперативке... юзай функции SaveToFile и LoadFromFile или свое что-нибудь придумай...
Цитата:
Originally posted by Relax
адрес родителя возвращается функцией при добавлении этого родителя... или можно по индексу обратиться TreeView->Items->Item
а то что пр повторном запуске программы все исчезает - это естественно - ведь вся структура хранится только в оперативке... юзай функции SaveToFile и LoadFromFile или свое что-нибудь придумай...
адрес родителя возвращается функцией при добавлении этого родителя... или можно по индексу обратиться TreeView->Items->Item
а то что пр повторном запуске программы все исчезает - это естественно - ведь вся структура хранится только в оперативке... юзай функции SaveToFile и LoadFromFile или свое что-нибудь придумай...
Блин, все так геморно :( А можно например сделать так, что бы то что я добавил в файл записалось, а потом как-то из него грузилось?
Цитата:
Originally posted by Dissident
Блин, все так геморно :( А можно например сделать так, что бы то что я добавил в файл записалось, а потом как-то из него грузилось?
Блин, все так геморно :( А можно например сделать так, что бы то что я добавил в файл записалось, а потом как-то из него грузилось?
- Так вы за меня еще и есть будуте?
- АГА!
("Вовка в три-девятом царстве.")
Цитата:
Originally posted by Dissident
Блин, все так геморно :( А можно например сделать так, что бы то что я добавил в файл записалось, а потом как-то из него грузилось?
Блин, все так геморно :( А можно например сделать так, что бы то что я добавил в файл записалось, а потом как-то из него грузилось?
сохрани в файл, погляди как оно там хранится и попытайся воспроизвести ручками...