Я использовал TDBImage. Буду очень рад, если помогло
// Процедура добавления фотографии в базу
procedure TfrmAddUs.btnPicEditClick(Sender: TObject);
begin
if OpenPictureDialog1.execute then
DBImage1.Picture.LoadFromFile(OpenPictureDialog1.f ilename);
DM.aqrUs.Edit; TBlobField(DM.aqrUs.FieldByName('FOTO')).LoadFromF ile(OpenPictureDialog1.FileName);
DM.aqrUs.Post;
end;
// Процедура показа фотографии
procedure TfrmMain.ShowPhoto;
var
Bitmap: TBitmap;
BS: TStream;
begin
Bitmap := nil;
BS := nil;
frmAddUs.PageControl1.ActivePageIndex := 0;
try
BS:= DM.aqrUs.CreateBlobStream(DM.aqrUs.FieldByName('FO TO'), bmRead);
Bitmap:= TBitmap.Create;
Bitmap.LoadFromStream(BS);
frmAddUs.DBImage1.Picture.Graphic:= Bitmap;
finally
Bitmap.Free;
BS.Free;
end;
end;
// Данные сотрудника
procedure TfrmMain.tbtUsOptClick(Sender: TObject);
begin
frmAddUs := TfrmAddUs.Create(Application);
frmAddUs.Label7.Caption := DM.aqrUs.FieldByName('ID_US').AsString;
frmAddUs.Caption := ' Свойства: '+DM.aqrUs.FieldByName('Last_Name').Value+
' '+DM.aqrUs.FieldByName('First_Name').Value;
ShowPhoto;// Используем процедуру показа фотографии.
if frmAddUs.ShowModal = mrOk then
begin
if DM.aqrUs.Modified then
DM.aqrUs.Post;
end;
frmAddUs.Free;
end;
|