604
社区成员
发帖
与我相关
我的任务
分享
/*
原来你是要节点的唯一的东西
那你可以传递节点的AbsoluteIndex
*/
// root的AbsoluteIndex 是0,便签的AbsoluteIndex 是1,便签1的是 2
if( TreeView1->Selected &&
TreeView1->AbsoluteIndex==2
{
TTreeNode *selectedNode=TreeView1->Selected;
Label1->Caption = selectedNode->Text ;//将选择的节点的文本显示在label上
}
void __fastcall TForm1::FormCreate(TObject *Sender)
{
AnsiString strFileName= "联系人.treeview" ;
if(!FileExists( strFileName)) //判断存盘文件是否存在
{
TTreeNode *rootNode=TreeView1->Items->AddChild(NULL,"root"); //添加根节点
//添加需要的子节点
TTreeNode *tempNode =TreeView1->Items->AddChild(rootNode,"便签");
TreeView1->Items->AddChild(tempNode,"便签1");
TreeView1->Items->AddChild(tempNode,"便签2");
tempNode=TreeView1->Items->AddChild(rootNode,"联系人");
TreeView1->Items->AddChild(tempNode,"联系人1");
TreeView1->Items->AddChild(tempNode,"联系人2");
}
else
{
TreeView1->LoadFromFile(strFileName); //从上次的存盘中读取数据
}
}
//---------------------------------------------------------------------------
void __fastcall TForm1::FormClose(TObject *Sender, TCloseAction &Action)
{
TreeView1->SaveToFile( "联系人.treeview"); //存盘
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button1Click(TObject *Sender) //添加节点代码
{
if(TreeView1->Selected)
{
TTreeNode *selectedNode=TreeView1->Selected;
TreeView1->Items->AddChild(selectedNode,"新增的节点");
}
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button2Click(TObject *Sender) //删除节点代码
{
if(TreeView1->Selected)
{
TTreeNode *selectedNode=TreeView1->Selected;
selectedNode->DeleteChildren(); //删除其子节点
selectedNode->Delete() ; //删除自身
}
}
//---------------------------------------------------------------------------
void __fastcall TForm1::TreeView1Click(TObject *Sender)//单击节点事件
{
if(TreeView1->Selected)
{
TTreeNode *selectedNode=TreeView1->Selected;
Label1->Caption = selectedNode->Text ;//将选择的节点的文本显示在label上
}
}
//---------------------------------------------------------------------------
for (int i = 0; i < main_bar->ItemLinks->Count; i++)
{
TTreeNode *node;
//-------------------------parent-----------------------
TdxBarSubItem *sub = (TdxBarSubItem *)main_bar->ItemLinks->Items[i]->Item;
if(sub->Visible == ivNever || sub->Name == "MMBchange_hotel")
continue;
else if(sub->Visible == ivAlways)
{
node = TV->Items->AddChild(NULL,sub->Caption.Trim());
this->sg_name->Add(sub->Name.Trim());
this->sg_parent->Add("0");
this->sg_caption->Add(sub->Caption);
if(sg_all_name->IndexOf(sub->Name.Trim() + ",0") != -1)
{
sg_child->Add(sg_all_id->Strings[sg_all_name->IndexOf(sub->Name.Trim() + ",0")]); //menu_id
sg_op->Add("0");
}
else
{
sg_child->Add(sub->Name.Trim());
sg_op->Add("1");
}
}
//-------------------------child------------------------
for (int j = 0; j < sub->ItemLinks->Count; j++)
{
if(sub->Name == "MMBchange_db" || sub->Name == "MMBchange_hotel")
continue;
else
{
TdxBarLargeButton *button = (TdxBarLargeButton *)sub->ItemLinks->Items[j]->Item;
if(button->Visible == ivAlways && sg_visible->IndexOf(button->Name) < 0)
{
sg_name->Add(button->Name.Trim());
if(sg_all_name->IndexOf(sub->Name.Trim() + ",0") != -1)
sg_parent->Add(sg_all_id->Strings[sg_all_name->IndexOf(sub->Name.Trim() + ",0")]); //menu_id
else
sg_parent->Add(sub->Name.Trim());
if(sg_all_name->IndexOf(button->Name.Trim() + "," + sub->Name.Trim()) != -1) //狦垫虫竒
{
sg_child->Add(sg_all_id->Strings[sg_all_name->IndexOf(button->Name.Trim() + "," + sub->Name.Trim())]); //menu_id
sg_op->Add("0");
}
else
{
sg_child->Add(button->Name.Trim());
sg_op->Add("1");
}
sg_caption->Add(button->Caption.Trim());
TV->Items->AddChild(node,button->Caption);
}
}
}
}
void __fastcall TForm1::TreeView1Click(TObject *Sender)
{
//第3层第1个节点就是你要的便签1(从root层开始算起)
if( TreeView1->Selected &&
TreeView1->Selected->Level==2 && /* 层数*/
TreeView1->Selected->Index ==0) /* index*/
{
TTreeNode *selectedNode=TreeView1->Selected;
Label1->Caption = selectedNode->Text ;//将选择的节点的文本显示在label上
}
}
//---------------------------------------------------------------------------