Карта сайтаСсылкиКонтакты

Хостинг


NULL значения в DBGrid

PDF Печать
Статьи

Как отобразить и изменить значение 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;

 

Добавить комментарий


Защитный код
Обновить