procedure Twqxgl.SnCheckListBox1ClickCheck(Sender: TObject);
var
  vi_nowindex:integer;
  p:vsi_pstr;                           //数据包指针
  vs_qxcode:string;
begin  vi_nowindex:=SnCheckListBox1.ItemIndex;
  p:=SnTreeView1.Selected.Data;
  vs_qxcode:=p^.vs_qx;
  if SnCheckListBox1.Checked[vi_nowindex]=true then
   begin
     //选中
     vs_qxcode[vi_nowindex]:='Y';
     if SnTreeView1.Selected.StateIndex=1 then
      begin
        SnTreeView1.Selected.StateIndex:=4;
      end;
   end
  else
   begin
     //取消选中
     vs_qxcode[vi_nowindex]:='N';
   end;   p.vs_qx:=vs_qxcode;
   SnTreeView1.Selected.Data:=p;end;注意:数据类型vsi_pstr的声明如下:
type
  vr_qx=Record
    vs_code:string;    //权限项目代码
    vs_qx:string;      //操作权限代码
  end;
  vsi_pstr=^vr_qx;
  上面一段程序是在一个选择框列表中选择改变时触发的事件,是用来改变树形视图中选择项的状态。不是我在这个选框中的选择项状态改变多次以后,总是会出现内存溢出的错误。请大家帮忙看一看,解决一下。
  小弟非常急。
  这个树形视图控件是用Snpack1.0的组件中的树形视图