TreeView 如果如此操作,谢谢
A
|_a1
|_a2
B
|_b1
|_b2
|_b3
C
|_c1
|_c2
如上的TreeView, 现在光标处于b2. 现在想点击Button后,删除B下面的所有子点(b1,b2,b3),再加上d1,d2,变成如下. 怎么做?谢谢前辈。
A
|_a1
|_a2
B
|_d1
|_d2
C
|_c1
|_c2
[解决办法]
void UpdateNode(TTreeView *tv) {
TTreeNode *nodeCurrent = GetCurrentNode(tv); // 获取当前节点
TTreeNode *nodeParent = nodeCurrent->Parent; // 当前节点的父节点
nodeParent->DeleteChildren(); // 删除父节点的所有子节点
AddNewChildren(nodeParent); // 添加新的子节点
}
TTreeNode *GetCurrentNode(TTreeView *tv) {
return tv->Selected; // 当前所选中的节点
或者
return tv->GetNodeAt(x, y); // 根据鼠标位置获取当前节点
}