我有多条记录,如果上一条记录没有校验通过是不允许到下一条记录的,当它切换的时候,我用什么事件来拦截,禁止切换到另一条记录?

解决方案 »

  1.   

    OnSelectItem事件发现跳过就重新选择原先的记录
      

  2.   

    那样是不行的,我发现所有的记录都被选中了。真晕procedure TfrmMachSetting.listMachNoSelectItem(Sender: TObject; Item: TListItem; Selected: Boolean);
    begin
      if (Selected = False) then
      begin
        Item.Selected := True;
        Exit;  
      end;
    end;
      

  3.   

    procedure TfrmMachSetting.listMachNoSelectItem(Sender: TObject; Item: TListItem; Selected: Boolean);
    begin
      if (Selected = true) then//注意这里
      begin
        Item.Selected := false;//注意这里
        Exit;  
      end;
    end;
    但是还要加判断,不然你会全部都选不上的
      

  4.   

    to forverlove:能否把代码贴上来?