1. Treeview operations involve itemhandle (equivalent to pointer), and treeviewitem (data node) must note that treeviewitem is a struct operated by passing value.
2. nodes are referenced Based on itemhandle.
3. When a node is added, its children is set to false. However, after a child node is added to it, its children is set to true (you need to use getitem to obtain it again)
4. itempopulate event: If children = true when the node is added, the first time you expand the node, the itempopulate event will be triggered. If you expand the node again after the child node is filled, the event will not be triggered again, if the child node is not filled, this event is triggered every time it is expanded.
4.1 If the children = false option is set when the node is added and the child node is not added to the node (the Children option is set to true when the child node is added ), when this node is expanded, the modification will not be violated.
The trigger condition for this event is to determine whether a node's children is true and whether it has been expanded. If there is no child node (it cannot be expanded) and its children is true, this event is triggered every time you expand it.
Another Hope Network http://topic.csdn.net/t/20020918/14/1033798.html
It is said that writing this. expanditem (newhandle) in selectionchanging will trigger this event every time it is expanded. I tested it as if this was not the case (pb11, XP environment)
// Delete all nodes
TV _1.deleteitem (0)