Images qui ne s'affichent pas

29_Jeannot_29 Messages postés 2 Date d'inscription mercredi 26 mars 2014 Statut Membre Dernière intervention 29 mars 2014 - 26 mars 2014 à 11:16
29_Jeannot_29 Messages postés 2 Date d'inscription mercredi 26 mars 2014 Statut Membre Dernière intervention 29 mars 2014 - 29 mars 2014 à 10:05
Bonjour
J'ai programmé une application sur les oiseaux (plusieurs mêmes mais elles présentent la même anomalie). La BDD est un fichier .db et les images des JPG.
Sur mon PC l'appli affiche bien les images dès l'ouverture de la page les contenant.
Lorsque je transfère cette appli sur un autre PC, pas d'affichage des images. Même chose pour les chants.
Pourtant elles sont stockées dans un dossier /IMAGES interne à l'appli avec le chemin
complet (ex : ExtractFilePath(ParamStr(0)) + 'images\'; et + 'sons\').
A chaque fois je dois provoquer l'affichage des images en modifiant individuellement
chaque fiche (il y en a 450). Quelle peut en être la raison ?
Je suis sous Seven et j'utilise Delphi 7 Entreprise.
Si j'utilisais une base .MDB + ADO, serait-ce une solution ?
Merci de votre aide

2 réponses

korgis Messages postés 420 Date d'inscription samedi 17 mai 2003 Statut Membre Dernière intervention 6 mai 2019 17
27 mars 2014 à 18:48
Salut.

"je dois provoquer l'affichage des images en modifiant individuellement
chaque fiche"

Pourrait-tu nous indiquer concrètement par quoi tu remplaces :

"ExtractFilePath(ParamStr(0)) + 'images\';"

pour que ça fonctionne sur les autres PC ?

N'hésite pas à donner des bouts de code afin de poser clairement le problème.
0
29_Jeannot_29 Messages postés 2 Date d'inscription mercredi 26 mars 2014 Statut Membre Dernière intervention 29 mars 2014
29 mars 2014 à 10:05
Bonjour et merci de me répondre
Voici le code lors de la création de la fiche d'un oiseau (qui doit permettre l'affichage de la photo et et du chant de l'oiseau en question :

procedure TSaisieForm.Image1Click(Sender: TObject);
begin
OpenDialog1.Filter := '';
OpenDialog1.Filter := '*.jpg';
OpenDialog1.InitialDir := ExtractFilePath(Application.ExeName) + 'images\';
If OpenDialog1.Execute Then
Begin
Form1.Table1Chemin_img.AsString := OpenDialog1.FileName;
Image1.Picture.LoadFromFile(OpenDialog1.FileName );
End;
end;

procedure TSaisieForm.SonBoutonClick(Sender: TObject);
begin
OpenDialog2.Filter := '';
OpenDialog2.Filter := '*.mp3';
OpenDialog2.InitialDir := ExtractFilePath(Application.ExeName) + 'sons\';
If OpenDialog2.Execute Then
Begin
MediaPlayer1.Close;
Form1.Table1Chemin_chant.AsString := OpenDialog2.FileName;
MediaPlayer1.Filename := OpenDialog2.Filename;
MediaPlayer1.Open;
MediaPlayer1.Play;
end;
end;

Celui lorsque je change d'oiseau dans la liste déroulante :

procedure TForm1.DataSource1DataChange(Sender: TObject; Field: TField);
begin
If (Sender as TDataSource).State = dsBrowse then
If (Field=Nil) then
begin
If (FileExists(Table1Chemin_img.AsString)) then
Image3.Picture.LoadFromFile(Table1Chemin_img.AsString)
else
Image3.Picture.Bitmap.FreeImage;
end;
end;

J'ai utilisé un code donné par DelphiProg pour le chargement des images. Cela m'a rendu service et je l'en remercie.

Merci encore de ton aide
0
Rejoignez-nous