J'ai deux soucis :
1er je possede une bdd paradox avec des champs binaires devant contenir du son (wave, mp3)
je n'arrive pas à y enregistrer les fichiers son ???.
voici mon code
procedure TMain.CopiersonClick(Sender: TObject);
var
Tempfield :Tblobfield;
begin
Table.Edit; // Positionne la table en mode Edition
Tempfield :=Tblobfield.Create(table);
tempfield.fieldname:='son';
(Tempfield).loadfromfile(Label15.caption);//écrit le contenu du label
//dans le flux
Table.Post(); // Valide l'édition dans la base de données
Ensuite comment les rejouer.
2°
j'ai une form de 32 dbimages, comment peut on afficher 32 position sans avoir une repetition de database, table ??? est ce que Tquery peut faire l'affaire ???
Tu appelles la méthode CreateBlobStream du composant TTable.
Ensuite, tu stockes le contenu (ici une image) dans le stream.
Un petit conseil : pense à créer un champ qui contiendra la nature du contenu du champ TblobField. Sinon comment distinguer, à la lecture, si c'est un .wav ou un .mp3.
Pour relire le contenu du champ TBlobField, tu crées un gestionnaire d'évènement OnDataChange pour le datasource relié à la table et tu testes le contenu du champ indiquant le type de contenu. Selon celui-ci, tu orientes vers le composant adapté.
Evidemment, avec des images c'est plus facile puisqu'on dispose du composant TDbImage.
Réponse à la deuxième question :
Pourquoi n'utilises-tu pas un TDbCtrlGrid en mettant un TDbImage sur le premier panel (en conception) ?
Pensez à cliquer sur Réponse acceptée lorsque la réponse vous convient.
May Delphi be with you
Sauf si tu stockes toujours le même type d'image (.jpeg par exemple), il te faut un moyen de reconnaitre le type d'image stockée dans ton champ BLOB.
ImgExt est une variable enseignée au moment de l'ouverture du fichier par OpenPictureDialog1.Execute() et renseignée avec ExtractFileExt(OpenPictureDialog1.FileName).
Mais comme cette partie du code n'est pas indiquée, je comprends que tu aies eu du mal à t'y retrouver.
<HR color=#008000>
Pensez à cliquer sur Réponse acceptée lorsque la réponse vous convient.
<