查看: 106|回复: 0

uniGUI之多页面框架(16)

[复制链接]
发表于 2020-2-16 10:51:30 | 显示全部楼层 |阅读模式
结果图:



左边的树 的树结点 ,通过 结点名 与 右 侧TabSheet名 同等时,显示 相关页面。
这是相关 源代码
  1. procedure TMainForm.UniFormCreate(Sender: TObject);var  I: Integer; begin  for I := UniPageControl1.PageCount - 1 downto 1 do // 肯定是  downto 1  begin    UniPageControl1.Pages[I].Visible := false;    UniPageControl1.Pages[I].TabVisible := false;  end;  UniPageControl1.ActivePageIndex:=0;//设计 时, 肯定要 先 首页 最先显示 UniTreeView1.FullExpand;end;
复制代码
  1. procedure TMainForm.UniTreeView1Click(Sender: TObject);var  I: Integer;begin  for I := UniPageControl1.PageCount - 1 downto 0 do  begin    UniPageControl1.Pages[I].Visible := false;    UniPageControl1.Pages[I].TabVisible := false;  end;  for I := UniPageControl1.PageCount - 1 downto 0 do  begin    if UniPageControl1.Pages[I].Caption = UniTreeView1.Selected.Text then    begin      UniPageControl1.Pages[I].Visible := true;      UniPageControl1.Pages[I].TabVisible := true;;      break;    end;    UniPageControl1.Pages[0].TabVisible := true;    UniPageControl1.Pages[0].Visible := true;  end;end;
复制代码
  1. procedure TMainForm.SearchTree(const AText: string);var  S, SString: string;  I: Integer;  aExpand: Boolean;begin  SString := Trim(AText);  if SString  PSString then  begin    PSString := LowerCase(SString);    if (Length(PSString) > 0) or (PSString = '') then    begin      aExpand := PSString  '';      UniTreeView1.BeginUpdate;      tryfor I := 0 to UniTreeView1.Items.Count - 1 do        begin          S := LowerCase(UniTreeView1.Items[I].Text);          UniTreeView1.Items[I].Visible := (Length(PSString) = 0) or            (Pos(PSString, S) > 0);          UniTreeView1.Items[I].Expanded := aExpand;        end;      finally        UniTreeView1.EndUpdate;      end;    end;  end;end;
复制代码
源文件下载

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?用户注册

x

相关技术服务需求,请联系管理员和客服QQ:2753533861或QQ:619920289
您需要登录后才可以回帖 登录 | 用户注册

本版积分规则

帖子推荐:
客服咨询

QQ:2753533861

服务时间 9:00-22:00

快速回复 返回顶部 返回列表