lst_projet.DataController.DataSet.Locate('pm_id',vPm_ID,[]);
bl:= lst_projet.DataController.DataSet.getBookmark;
lst_projet.DataController.DataSet.GotoBookmark(bl);
lst_projet.SetFocus;
lst_projet.FocusedNode.Expanded:=true;

=======================

http://blog.163.com/bin0315@126/blog/static/40662642201284250445/

一、导出EXCEL   TXT   HTML:

uses cxTLExportLink;

cxExportTLToEXCEL(dm.SaveDialog.FileName,cxDBTreeList1,TRUE,TRUE);  //轉入EXCEL
cxExportTLToTEXT(dm.SaveDialog.FileName,cxDBTreeList1,TRUE,TRUE);     //轉入TXT
cxExportTLToHTML(dm.SaveDialog.FileName,cxDBTreeList1,TRUE,TRUE);     //轉入HTML

---------------------------------------------------------------------------------------------------------------

二、cxdbtreelist1共多少条记录:     showmessage(inttostr(cxtreelist1.VisibleCount));

cxdbtreelist1当前记录的索引:  showmessage(inttostr(cxTreeList1.FocusedNode.VisibleIndex));

cxdbtreelist1有多少列:             showmessage(inttostr(cxtreelist1.VisibleColumnCount));

cxdbtreelist1当前记录的层级:   showmessage(inttostr(cxTreeList1.FocusedNode.Level));

cxdbtreelist1自动展开:             cxtreelist1.fullexpand; //自动展开

cxdbtreelist1自动折叠 :               cxtreelist1.FullCollapse;

cxdbtreelist1取上级节点内容:   ShowMessage(cxdbTreeList1.FocusedNode.Parent.Values[0]);

三、新增、删除结点:

增加同级结点:

procedure Tfr_bommglin.cxButton1Click(Sender: TObject);
var node:TcxTreeListNode;
begin

node:=cxdbTreeList1.FocusedNode.Parent.AddChild;
   node.Values[0]:='aaaaa';
   node.Values[1]:=node.Level;

end;

增加下级节点:

procedure Tfr_bommglin.cxButton2Click(Sender: TObject);
var node:TcxTreeListNode;
begin
   node:=cxdbTreeList1.FocusedNode.AddChild;       //增加子节点在首记录:cxdbTreeList1.FocusedNode.AddChildFirst;
   node.Values[0]:='aaaaa';
   node.Values[1]:=node.Level+1;
   cxdbTreeList1.FocusedNode.Expanded:=true;  //展开子节点
end;

删除节点:

ClientDataSet1.GetBookmark;
cxdbTreeList1.FocusedNode.Delete;     //删除当前节点记录;删除当前节点的子节点:cxdbTreeList1.FocusedNode.DeleteChildren;
cxDBTreeList1.DataController.GotoBookmark;

多节点选择删除:

cxDBTreeList1.DeleteSelection

数据集控制:

cxDBTreeList1.DataController.dataset.GotoFirst; //GotoLast     gotonext    gotoprev   GotoBookmark

cxDBTreeList1.DataController.dataset.Append;         //cancel      updatedata

cxDBTreeList1.DataController.dataset.edit;

根据cxdbtreelist随clientdataset1记录定位:

首先:bl:=cxDBTreeList1.DataController.DataSet.GetBookmark;

接着:cxDBTreeList1.DataController.DataSet.GotoBookmark(bl);
          cxDBTreeList1.SetFocus;

多结点选择取记录:

for i:=0 to cxDBTreeList1.SelectionCount-1 do
     begin
       ShowMessage(cxDBTreeList1.Selections[i].Values[1]);
    end;

-------------------------------------------------------------------------------------------

三、增加节点图片:

先在窗体上放ImageList关联到cxDBTreeList,在cxDBTreeList的GetNodeImageIndex事件中写如下:

procedure cxDBTreeList1GetNodeImageIndex(Sender:TcxCustomTreeList; ANode: TcxTreeListNode; AIndexType:
                       TcxTreeListImageIndexType; var AIndex: TImageIndex);
 var
    i :Integer;
  begin
    //给树结点加上图标
    for i := 0 to ANode.ValueCount do
      begin
     if ANode.Level = 0 then
         begin
           ANode.ImageIndex := 0;
         end
       else
       if ANode.Level = 1 then
         begin
           ANode.ImageIndex := 2;
         end
       else
       if ANode.Level = 2 then
         begin
           ANode.ImageIndex := 1;
         end;
     end;
 end;

cxdbtreelist的按记录查找节点的更多相关文章

  1. 算法学习记录-查找——二叉排序树(Binary Sort Tree)

    二叉排序树 也称为 二叉查找数. 它具有以下性质: 若它的左子树不空,则左子树上所有结点的值均小于它的根结点的值. 若它的右子树不空,则右子树上所有结点的值均大于它的根结点的值. 它的左.右子树也分别 ...

  2. DOM操作 ——如何添加、移除、移动、复制、创建和查找节点等。

    DOM操作 --如何添加.移除.移动.复制.创建和查找节点等. (1)创建新节点 createDocumentFragment() //创建一个DOM片段 createElement() //创建一个 ...

  3. (一)DOM 常用操作 —— “查找”节点

    在 DOM 树中,如果想要操作一个节点,那么首先要"查找"到这个节点.查找节点的方法由 Document 接口定义,而该接口由 JavaScript 中的 document 对象实 ...

  4. Selenium 查找节点

    Selenium 可以驱动浏览器完成各种操作,比如填充表单.模拟点击等.比如,我们想要完成向某个输入框输入文字的操作,总需要知道这个输入框在哪里吧?而 Selenium 提供了一系列查找节点的方法,我 ...

  5. 再谈树---无根树转有根树( dfs搜索转化+fa数组记录父节点) *【模板】

    #include <stdio.h> #include <string.h> #include <stdlib.h> #include <vector> ...

  6. javasript 的DOM 节点操作:创建,插入,删除,复制以及查找节点

    DOM 含义: DOM 是文档对象模型(Document Object Model) 是一种基于浏览器编程的一套API 接口,我W3C 出台推荐的标准.其赋予了JS 操作节点的能力,当网页被加载时,浏 ...

  7. JS中的DOM操作怎样添加、移除、移动、复制、创建和查找节点

    DOM操作怎样添加.移除.移动.复制.创建和查找节点? (1)创建新节点 createDocumentFragment() //创建一个DOM片段 createElement() //创建一个具体的元 ...

  8. Dom4j 查找节点或属性

    Dom4j  查找节点或属性 例如 1 查找下面xml中的student节点的age属性, xpathstr="/students/student/@age"; 2 查找下面xml ...

  9. cocoscreator查找节点的方法 (跟jquery find一样)

    var each = function(object, callback) { var type = (function() { switch (object.constructor) { case ...

随机推荐

  1. hdu 1698(线段树区间更新)

    Just a Hook Time Limit: 4000/2000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total ...

  2. 【POJ 1011】 Sticks

    [题目链接] http://poj.org/problem?id=1011 [算法] 深搜剪枝 首先我们枚举木棍的长度i,那么就有s/i根木棍,其中s为木棍长度的总和,朴素的做法就是对每种长度进行搜索 ...

  3. tp的redis驱动

    1.增加分布式支持 使用方法:将文件存放在ThinkPHP框架根目录下的Library\Think\Session\Driver\目录下 config配置参数: //Redis Session配置 ' ...

  4. selenium3 + python - page_source页面源码

    前言: 有时候通过元素的属性的查找页面上的某个元素,可能不太好找,这时候可以从源码中爬出想要的信息.selenium的page_source方法可以获取到页面源码. 本次以博客园为例,先爬取页面源码, ...

  5. Python 41 完整查询语句 和 一堆关键字

    一:完整查询语句 1.拷贝表 *** create table copy_table select *from customer ; 拷贝结构 与数据 create table copy_table ...

  6. 使用idea2.5建立maven项目

    使用idea的步骤: 1.建立一个新的maven项目 2.选中maven项目 3.点击next,输入groupID和artifactid 4.点击next  选择projectlocation 5.选 ...

  7. Jquery IE8兼容性

    环境: jsp+jquery-1.11.1.min.js 问题描述: 使用$("#article标签id名").append(“xxxxxxxxx") ,chrome.f ...

  8. nprogress进度条和ajax全局事件

    nprogress和ajax全局事件 nprogress 官方网站:http://ricostacruz.com/nprogress/ 下载地址:https://github.com/rstacruz ...

  9. CentOS7.5 AndroidStudio Debug报错:insufficient permissions for device

    / ::: Launching instantapp $ adb push /home/vevi/AndroidStudioProjects/WeChatGod/app/build/outputs/a ...

  10. MSP430之software development flow

    MSP430 software development flow. 1) The shaded portion highlights the most common development path; ...