bcb获取控件的结构

该代码段展示了一个递归函数,用于获取并显示TWinControl子控件的结构。通过ClassName过滤TLabel控件,以指定的深度显示控件名称、类型和子控件数量。
摘要由CSDN通过智能技术生成

void __fastcall TfrmMinFtpMain::ResetControls(TWinControl *winControl,int i_depth)
{
    int depth = i_depth+1 ;
    String s_depth="┡";
    if(String(winControl->ClassName()) == "TLabel") return;
    //if(winControl->ControlCount>0)ListBox1->Items->Add((String)winControl->Name +"-("+ IntToStr(winControl->ControlCount) +")");
    int j=depth;
    while(j>0)
    {
        s_depth = "  " + s_depth;
        j--;
    }
    for(int i=0;i<winControl->ControlCount;i++)
    {
        AnsiString ansiPath;
        TWinControl *winChildControl = (TWinControl *)(winControl->Controls[i]);
        ansiPath.sprintf("%s%s* %s(%d)",s_depth,String(winControl->Controls[i]->ClassName()),winControl->Controls[i]->Name,winChildControl->ControlCount);
        //ListBox1->Items->Add(""String(winControl->Controls[i]->Name()));
        ListBox1->Items->Add(ansiPath);

       ResetControls(winChildControl,depth);

    }
    return;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值