Внешний вид сайта:

NULL значения в DBGrid

Как отобразить и изменить значение NULL (пустой указатель) в DBGrid. Вы должны написать два обработчика события, чтобы визуализировать и редактировать NULL-значения в DBGrid. Если пользователь хочет сбросить поле в NULL, он должен войти в поле и нажать Ctrl-0.
procedure TForm1.DBGrid1DrawColumnCell(Sender: TObject; 
  const Rect: TRect; DataCol: Integer; Column: TColumn; 
  State: TGridDrawState); 
begin 
   if not (gdFocused in State) then 
   begin 
      if Column.Field.IsNull then 
      begin 
         with TDBGrid(Sender).Canvas do 
         begin 
            Brush.Color := clDkGray; // измените цвет по желанию
            Pen.Color := clWhite; 
            Rectangle(Rect); 
         end; 
      end; 
   end; 
end;

procedure TForm1.DBGrid1KeyDown(Sender: TObject; var Key: Word; 
  Shift: TShiftState); 
var 
   TheGrid : TDBGrid; 
begin 
   // проверить на Ctrl-0  (ноль, не заглавная буква O) 
   if (char(Key)='0') and (shift = [ssCtrl]) then 
   begin 
      TheGrid := (Sender as TDBGrid); 
      if TheGrid.DataSource.AutoEdit then 
         TheGrid.DataSource.Edit; 
      TheGrid.SelectedField.Clear; 
   end; 
end;

Комментарии

Нет комментариев. Ваш будет первым!