Inserer une image Jpeg dans BDE

louiwahl 103 Messages postés vendredi 20 février 2004Date d'inscription 8 mars 2018 Dernière intervention - 2 mars 2018 à 21:30 - Dernière réponse : cs_cantador 4996 Messages postés dimanche 26 février 2006Date d'inscriptionModérateurStatut 27 mars 2018 Dernière intervention
- 21 mars 2018 à 18:54
Bonsoir.

Voila je me fais un petit programme de base de donnée et
J' aimerais insérer une image Jpeg dans ma base de donnée.
Mais je n'arrive qu'a charger l'image dans le DBImage.
Je vous donne une copie du programme.

Un grand merci d'avance.

unit UImageJpeg;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Menus, DB, DBTables, ExtDlgs, StdCtrls, DBCtrls, Grids, DBGrids,
Mask, Lbtn, ExtCtrls, Jpeg, Buttons;

type
TFMonCalpin = class(TForm)
Panel4: TPanel;
LbtnRetour: tLbtn;
Panel2: TPanel;
Label12: TLabel;
Panel3: TPanel;
LBtnPrecedent: tLbtn;
LbtnSuivant: tLbtn;
LbtnNouveau: tLbtn;
LbtnEnregistrer: tLbtn;
LbtnImprimer: tLbtn;
tLbtnPlusDinfos: tLbtn;
LbtnQuitter: tLbtn;
Panel5: TPanel;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
Label5: TLabel;
Label6: TLabel;
Label7: TLabel;
Label8: TLabel;
Label9: TLabel;
Label10: TLabel;
Label11: TLabel;
DBEdit1: TDBEdit;
DBEdit2: TDBEdit;
DBEdit3: TDBEdit;
DBEdit4: TDBEdit;
DBEdit5: TDBEdit;
DBEdit6: TDBEdit;
DBEdit7: TDBEdit;
DBEdit9: TDBEdit;
DBEdit10: TDBEdit;
DBEdit11: TDBEdit;
Photo: TDBImage;
DBGrid2: TDBGrid;
DBNavigator2: TDBNavigator;
DBMemo1: TDBMemo;
PrinterSetupDialog1: TPrinterSetupDialog;
OPDialog: TOpenPictureDialog;
ODialog: TOpenDialog;
PrintDialog1: TPrintDialog;
DataSource1: TDataSource;
Image: TImage;
Table: TTable;
procedure SetJPEGOptions(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure ProgressUpdate(Sender: TObject; Stage: TProgressStage;
PercentDone: Byte; RedrawNow: Boolean; const R: TRect; const Msg: string);
procedure PrinterSetup1Click(Sender: TObject);
procedure Exit1Click(Sender: TObject);
procedure DBImage1Click(Sender: TObject);
procedure LBtnPrecedentClick(Sender: TObject);
procedure LbtnSuivantClick(Sender: TObject);
procedure LbtnNouveauClick(Sender: TObject);
procedure LbtnEnregistrerClick(Sender: TObject);
procedure tLbtnPlusDinfosClick(Sender: TObject);
procedure LbtnQuitterClick(Sender: TObject);
procedure LbtnRetourClick(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
procedure OpenFile(const Filename: string);
end;

var
FMonCalpin: TFMonCalpin;

implementation

{$R *.dfm}

procedure TFMonCalpin.OpenFile(const Filename: string);
begin
try
Photo.Picture.LoadFromFile(FileName);
except
on EInvalidGraphic do
Image.Picture.Graphic := nil;
end;
SetJPEGOptions(self);
Photo.Picture.LoadFromFile(FileName);
end;


procedure TFMonCalpin.SetJPEGOptions(Sender: TObject);
var
Temp: Boolean;
begin
Temp := Image.Picture.Graphic is TJPEGImage;
if Temp then
with TJPEGImage(Image.Picture.Graphic) do
end;

procedure TFMonCalpin.FormCreate(Sender: TObject);
begin
FMonCalpin.Height :=530;
FMonCalpin.Width := 720;
OPDialog.Filter := GraphicFilter(TGraphic);
Image.OnProgress := ProgressUpdate;
end;


procedure TFMonCalpin.PrinterSetup1Click(Sender: TObject);
begin
PrinterSetupDialog1.Execute;
end;

procedure TFMonCalpin.Exit1Click(Sender: TObject);
begin
Close;
end;

procedure TFMonCalpin.DBImage1Click(Sender: TObject);
begin
Table.Append;
if ODialog.Execute then
OpenFile(ODialog.FileName);
end;

procedure TFMonCalpin.ProgressUpdate(Sender: TObject; Stage: TProgressStage;
PercentDone: Byte; RedrawNow: Boolean; const R: TRect; const Msg: string);
begin
if Stage = psRunning then
Caption := Format('%d%%',[PercentDone])
else
Caption := 'FMonCalpin';
end;

procedure TFMonCalpin.LBtnPrecedentClick(Sender: TObject);
begin
Table.Prior;
end;

procedure TFMonCalpin.LbtnSuivantClick(Sender: TObject);
begin
Table.Next;
end;

procedure TFMonCalpin.LbtnNouveauClick(Sender: TObject);
begin
Table.Append;
DBEdit1.Color := cl3DLight;
end;

procedure TFMonCalpin.LbtnEnregistrerClick(Sender: TObject);
begin
Table.Post;
end;

procedure TFMonCalpin.tLbtnPlusDinfosClick(Sender: TObject);
begin
FMonCalpin.Top :=10;
FMonCalpin.Height := 710;
Panel4.Visible := true;
DBGrid2.Visible := True;
DBNavigator2.Visible := True;
end;

procedure TFMonCalpin.LbtnQuitterClick(Sender: TObject);
begin
Close;
end;

procedure TFMonCalpin.LbtnRetourClick(Sender: TObject);
begin
FMonCalpin.Height := 530;
Panel4.Visible := False;
DBGrid2.Visible := False;
DBNavigator2.Visible := False;
end;

end.
Afficher la suite 

Votre réponse

3 réponses

louiwahl 103 Messages postés vendredi 20 février 2004Date d'inscription 8 mars 2018 Dernière intervention - 8 mars 2018 à 22:20
0
Merci
Bon Ben Salut tout le monde?????????? est-ce qu'il y a du monde???
et merci pour vos reponses j'ai adorer votre site mais bon ben temps pis...............

Commenter la réponse de louiwahl
papyvore 155 Messages postés samedi 15 novembre 2003Date d'inscription 5 avril 2018 Dernière intervention - 10 mars 2018 à 11:55
0
Merci
salut
voilà ce que j'ai qui marche (avec ado) essai voir si ça te convient
procedure TFormEspecesBase.DBImage1DblClick(Sender: TObject);
var
J: TJpegImage;
B: TBitmap;
begin
J := TJpegImage.Create;
B := TBitmap.Create;

UDataModul.DataModule1.ADOTableEspeceBase.Edit;

OpenPictureDialog1.InitialDir := ExtractFilePath(Application.ExeName)
+ 'Images';
if OpenPictureDialog1.Execute then
begin
if ExtractFileExt(UpperCase(OpenPictureDialog1.FileName)) = '.BMP' then
begin
DBImage1.Picture.LoadFromFile(OpenPictureDialog1.FileName);
UDataModul.DataModule1.ADOTableEspeceBase.Post;
end;

if ExtractFileExt(UpperCase(OpenPictureDialog1.FileName)) = '.JPG' then
begin
J.LoadFromFile(OpenPictureDialog1.FileName);
B := TBitmap.Create;
B.Assign(J);
DBImage1.Picture.Bitmap := B;
end;
end;

B.Free;
J.Free;
end;
Commenter la réponse de papyvore
cs_cantador 4996 Messages postés dimanche 26 février 2006Date d'inscriptionModérateurStatut 27 mars 2018 Dernière intervention - 21 mars 2018 à 18:54
0
Merci
bonsoir louiwahl,
merci de répondre quelque chose à papyvore..
@bientôt
Commenter la réponse de cs_cantador

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.