大致思路是这样的:在DXdbgrid表格中能否实现当点击或光标所在行,符合条件不能被修改,移到其他不符合的则能修改。
procedure Tsvr_sp_jh.dxGridCustomDrawCell(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
  inherited;
  if ANode.HasChildren then Exit;
 if ASelected  then
  begin
    Value := ANode.Values[dxGrid.FindColumnByFieldName('diaoru_shengxiao').Index];
    if not VarIsNull(Value) then
    begin
      if Value =true then  
      begin
        符合条件后,当鼠标点击的这行或是光标所在的行能被整行选中,不能编辑、修改等
      end
      else 能被修改或编辑
    end;
  end
end;