c++ builder TreeView控件節(jié)點遍歷代碼
void __fastcall TForm1::GetRootNodes(TTreeView *DestTreeView)//得到所有根節(jié)點
{
TTreeNode *vNode = NULL;
vNode = DestTreeView->Items->GetFirstNode();
while(vNode)
{
ShowMessage(vNode->Text);//處理查找到的根節(jié)點
vNode = vNode->getNextSibling();
}
}
//---------------------------------------------------------------------------
void __fastcall TForm1::GetChildNodes(TTreeNode *ANode) //根據(jù)某個節(jié)點得到所有的子節(jié)點
{
TTreeNode *vNode;
vNode=ANode->getFirstChild();
while(vNode)
{
ShowMessage(vNode->Text);//處理查找到的子節(jié)點
vNode=ANode->GetNextChild(vNode);
}
}
void __fastcall TForm1::GetAllChildNodes(TTreeNode *ANode)//根據(jù)某個節(jié)點得到所有的子節(jié)點的遞歸處理過程
{
TTreeNode *vNode;
vNode=ANode->getFirstChild();
while(vNode)
{
ShowMessage(vNode->Text);//處理查找到的子節(jié)點//先序訪問
GetAllChildNodes(vNode);//遞歸調(diào)用
vNode=ANode->GetNextChild(vNode);
}
}
void __fastcall TForm1::VisitAllNodes(TTreeView *ATreeView)//遞歸訪問所有節(jié)點
{
TTreeNode *vNode = NULL;
vNode=ATreeView->Items->GetFirstNode();
while(vNode)
{
ShowMessage(vNode->Text);//處理查找到的根節(jié)點
GetAllChildNodes(vNode);
vNode=vNode->getNextSibling();
}
}
相關(guān)文章
C語言從猜數(shù)字游戲中理解數(shù)據(jù)結(jié)構(gòu)
猜數(shù)字是興起于英國的益智類小游戲,起源于20世紀中期,一般由兩個人或多人玩,也可以由一個人和電腦玩。游戲規(guī)則為一方出數(shù)字,一方猜,今天我們來用這個游戲案例理解數(shù)據(jù)結(jié)構(gòu)2022-04-04