Доброго времени суток, колдуны))) решил добавить в проект фото(фотки клиентов), нашел конвертер, немного переделал, появились конфликты.
Корректировка важная т.к выполняет сохранение изменений.
---------------------------------------------------------------------------------
Код:
procedure TForm7.Button5Click(Sender: TObject);
//var pick: string;
//begin
//DATAModule2.ADOQuery1.Edit;
//If Form7.OpenPictureDialog1.Execute then Form7.DBMemo1.Text:=Form7.OpenPictureDialog1.FileName;
//pick:=Form7.DBMemo1.Text;
//Form7.DBImage1.Picture.LoadFromFile(pick); //вариант без конвертера
//DATAModule2.ADOQuery1.Post;
//end;
Код:
procedure TForm7.Button5Click(Sender: TObject);
var
ConverterLoad: TImage;
ConverterSave: TBitmap;
ConverterStream: TMemoryStream; //вариант с конвертером
pick: string;
begin
DATAModule2.ADOQuery1.Edit;
If Form7.OpenPictureDialog1.Execute then
begin
Form7.DBMemo1.Text:=Form7.OpenPictureDialog1.FileName;
pick:=Form7.DBMemo1.Text;
ConverterSave := TBitmap.Create;
ConverterSave.Height := 300; // от размера зависит качество
ConverterSave.Width := 300;
ConverterLoad := TImage.Create(Self);
ConverterLoad.Name := 'ImageConverter';
ConverterLoad.Picture.LoadFromFile(pick);
ConverterSave.Canvas.StretchDraw(ConverterSave.Canvas.ClipRect,ConverterLoad.Picture.Graphic); // BMP готов
DBImage1.Picture.Bitmap := ConverterSave;
ConverterStream := TMemoryStream.Create;
ConverterSave.SaveToStream(ConverterStream); // изображение в Stream
TBlobField(DataModule2.ADOQuery1.FieldByName('Фото')).LoadFromStream(ConverterStream);
ConverterLoad.Free;
ConverterSave.Free;
DATAModule2.ADOQuery1.Post;
end;
end;