uses CommCtrl;SetWindowLong(TreeView1.Handle, GWL_STYLE, GetWindowLong(TreeView1.Handle, GWL_STYLE) or TVS_CHECKBOXES);

解决方案 »

  1.   

    prometheusphinx(白日梦) ,我试了,可以加了,
    但是还有问题:怎么用?delphi中没有那个属性吗?
    拜托
      

  2.   

    //GetCheck
    var
      item: TTVITEM;
    begin
      item.mask := TVIF_HANDLE or TVIF_STATE;
      item.hItem := TreeView1.Selected.ItemId;
      item.stateMask := TVIS_STATEIMAGEMASK;
      SendMessage(TreeView1.Handle, TVM_GETITEM, 0, LPARAM(@item));
      if Boolean((item.state shr 12) - 1) then
        ShowMessage('Check');
    end;//SetCheck
    var
      item: TTVITEM;
    begin
      item.mask := TVIF_HANDLE or TVIF_STATE;
      item.hItem := TreeView1.Selected.ItemId;
      item.stateMask := TVIS_STATEIMAGEMASK;
      item.state := INDEXTOSTATEIMAGEMASK(1);//1 Check, 2 Uncheck
      SendMessage(TreeView1.Handle, TVM_SETITEM, 0, LPARAM(@item));
    end;
      

  3.   

    Sorry, 2 Check, 1 Uncheck