如题
不胜感激

解决方案 »

  1.   

    将TTreeView的MultiSelect设为True,要想操作选中的节点,就遍历结点,如果Selected属性等于True,就进行相应的操作。
      

  2.   

    treelist貌似没这个属性
    我想做的是:  
       比如  按住CTRL,然后用鼠标左键选中3-9节点,然后一次性把着选中的这几个节点中column1 中内容都改为AAAA.
    大概就是这个意思
      

  3.   

    treelist不是delphi的标准控件吧?
    标准的只有treeview和listview。。
      

  4.   


    不用遍历全部节点,Selections属性下的就是你选了的节点
      

  5.   

    各位  我用的是TreeList
      

  6.   

    cxTreeList?cxTreeList也有MultiSelect的,在OptionsSelection里面。选了之后,同样是访问Selections属性来得到选了的节点。
      

  7.   

    dxtreelist.........................
      

  8.   

    原来是在options里面
    眼神不行了
    现在的问题是,我要遍历选中的这些节点来做点什么,而不是遍历所有的节点
    有什么办法呢?
      

  9.   

    看了下,这个属性在dxTreeList里叫SelectedNodes
      

  10.   

    我用下面的语句实现了,可是怎么让选定的这些节点行改变颜色使其醒目呢?
    [code=Delphi(Pascal)]   
    var
      node:TdxTreeListNode;
      i,j:Integer;
    begin
         i:=dxTreeList1.SelectedCount;
         for j := 0 to i-1 do
        begin
          node:=dxTreeList1.SelectedNodes[j];
          if dxTreeList1.SelectedNodes[j].Strings[0]='0' then
             dxTreeList1.SelectedNodes[j].Strings[0]:='1'
          else
             dxTreeList1.SelectedNodes[j].Strings[0]:='0';
        end ;
        dxTreeList1.Refresh;
    end;code]
      

  11.   

    OnCustomDrawCell里面代码如下,效果不慎理想:  i:=dxTreeList1.SelectedCount;
      for j:=0 to 1-1 do
      begin
       if ANode =dxTreeList1.SelectedNodes[j] then
       begin
        AColor:=$00EEFCFF;
        afont.Color :=clBlue;
       end;
      end;
      

  12.   


    procedure TForm1.dxTreeList1CustomDrawCell(Sender: TObject;
      ACanvas: TCanvas; ARect: TRect; ANode: TdxTreeListNode;
      AColumn: TdxTreeListColumn; ASelected, AFocused, ANewItemRow: Boolean;
      var AText: String; var AColor: TColor; AFont: TFont;
      var AAlignment: TAlignment; var ADone: Boolean);
    begin
      if ANode.Selected then
      begin
        AColor := $00EEFCFF;
        AFont.Color := clBlue;
      end;
    end;