Delphi TcxTreeList 总结

Delphi  TcxTreeList添加树节点,Node: TcxTreeListNode;这个是它的节点的类型,和TreeView的节点类似。

(1) 添加节点 vNode: TcxTreeListNode

     vNode:= TreeList.Add;

(2)添加图标

    vNode.StateIndex := cst_ChildImageOK;//  cst_ChildImageOK是图标在TImageList的位置。

(3) 赋值

    vNode.Values[colR_111.ItemIndex] := FADO.FieldByName('111').AsString;  //这个是节点的赋值语句,colR_111是表格的手动增加的列的名称,.ItemIndex是列在表格中的位置。Values是一个数组,这样就可以找到相应的值。

(4)动态创建列

    vColumn := TreeList.CreateColumn();
    vColumn.Caption.Text := FItems[I].cName;
    vColumn.Caption.AlignHorz := taCenter;
    vColumn.Tag := 1;
    vColumn.Name := 'colR_' + FItems[I].cCode;
    vColumn.DataBinding.ValueType := 'Currency';
    vColumn.PropertiesClassName := 'TcxCurrencyEditProperties';
    TcxCurrencyEditProperties(vColumn.Properties).DecimalPlaces := 2;
    TcxCurrencyEditProperties(vColumn.Properties).DisplayFormat := '0.00';
    TcxCurrencyEditProperties(vColumn.Properties).Alignment.Horz := taRightJustify;
    vColumn.Options.Editing := True;
//    vColumn.Options.Footer := True;  //这下面的注释行是代表 创建合计列。
//    vColumn.SummaryFooter.AlignHorz := taRightJustify;
//    vColumn.SummaryFooter.Format := '0.00';
//    vColumn.SummaryFooter.Kind := skSum;

(5)移动列

     因为需要动态创建列,把一些需要合计的列放在在后面的办法,

     //移动列
       procedure TFormCost_ProductCostDutchCalculate.MoveColumn;
       var
         I: Integer;
       begin
          colR_NCS.Position.ColIndex := 1;
       end;

     这样就可以实现,把列移动啦。

原文地址:https://www.cnblogs.com/zhangzhifeng/p/3133654.html