Программы   Загрузка Партнерство   О компании Контакты  
 
                    
  Карта Сайта   
   

Проблема хранения TDBImage

Автор: Steve Flynn


Исходный код компонента DBImage содержит ошибку, поскольку пробует загрузить данные буфера обмена, ища CF_PICTURE. А это несовместимо с хранящимися в поле данными.

Я исправил эту ошибку, изменив исходный код таким образом, чтобы данные буфера обмена сначала читались во временный TBitmap. TBitmap регистрируется как CF_PICTURE. Временное изображение затем назначалось полю и, поскольку оно также работает с изображениями, то и данным поля.

Все это потребует от вас изменений в исходном коде VCL, конкретно - в модуле DBCTRLS.PAS. Затем, естественно, это необходимо перекомпилить и пересобрать:


procedure TDBImage.PasteFromClipboard;
var
  ClipBrdBmp: TBitmap;
begin
  ClipBrdBmp := TBitmap.Create;
  if Clipboard.HasFormat(CF_BITMAP) and FDataLink.Edit then
  begin
    ClipBrdBmp.Assign(Clipboard);
    Picture.Assign(ClipBrdBmp);
  end;
  ClipBrdBmp.Free;
end;

Это все. Проблема решена.

           


Магазин Картриджей: заправка картриджей Спортивная. . аренда строительного оборудования Киев . Унитазы от 2900 руб - унитазы roca. Купите унитаз Roca дешевле. . Moscow Linguistic Center - изучение английского языка самостоятельно. . купить матрас киев .


Программы  |  Загрузка  |  Партнерство  |  О компании  |  Контакты

Copyright © LSD Software 2006 - 2011