neewby
Messages postés39Date d'inscriptionmardi 18 avril 2006StatutMembreDernière intervention19 mai 2006
-
9 mai 2006 à 11:44
neewby
Messages postés39Date d'inscriptionmardi 18 avril 2006StatutMembreDernière intervention19 mai 2006
-
17 mai 2006 à 15:31
Bonjour,
Je viens de reprendre un vieux programme fait par un ancien stagiaire,
il as été fait sous VB6 et est connecté a une BDD Access.
En gros j'ai une page avec des objets OLE dans lequel sont enregistrer
(Enregistrement de type Embedded) des images de tout format possibles à
l'aide de la fonction "InsertObjDlg". Le problème est qu'une fois
ajouté, l'image ne s'affiche pas ...
A la place on ne peut voir que l'icone et le nom du fichier ajouté. Le
seul moyen d'accèder a l'image est de double cliquer sur l'icone, ce
qui ouvre l'éditeur d'image par défaut. J'ai beau rafraichir les objet
OLE cela ne change rien.
En bref je voulais savoir si quelqu'un avait une solution a mon problème ...
Ou si quelqu'un a une autre méthode d'enregistrement et d'affichage des images dans un Objet OLE.
Merci d'avance parce que moi j'ai beau chercher, j'ai pas trouver de solution ...
neewby
Messages postés39Date d'inscriptionmardi 18 avril 2006StatutMembreDernière intervention19 mai 2006 15 mai 2006 à 16:55
En gros voila comment je rentre l'image dans la base de données :
Private Sub oleFields_DblClick(Index As Integer)
'Initialisation du CommonDialog
CD_image.FileName = ""
'Définition du filtre
CD_image.Filter = "Tous type de fichiers (*.*) | *.*"
'Récupération du fichier choisi
CD_image.ShowOpen
If CD_image.FileName <> "" Then
oleFields(Index).CreateEmbed (CD_image.FileName)
oleFields(Index).Refresh
End If
End Sub
Le problème reste qu'une fois rentrer j'ai beau actualiser mes objets OLE (oleFields(Index))
avec la fonction "refresh" rien n'y fait, je n'ais que l'icone de mon
image avec son nom ... et non pas un apercu de l'image ...
Si quelqu'un a une solution je serais aux anges, parce que c'est le
dernier problème qui me reste de mon appli ... alors la je commence a
saturé moi
neewby
Messages postés39Date d'inscriptionmardi 18 avril 2006StatutMembreDernière intervention19 mai 2006 17 mai 2006 à 15:31
J'ai presque trouvé la solution ... il me manque plus grand chose ...
Le problème est que sans précision l'image est enregistré comme un document "Package"
dans la base de donnée, et ne permet donc pas de faire un apercu. La
solution est donc d'insérer le document en précisant la classe de
l'objet.
Pour ma part il me faut une classe qui permet au minimum l'insertion d'images bitmap.
En gros la fonction est la suivante :
CreateEmbed (SourceDoc As String, [Class] )
le problème est que j'ai beau mettre la classe "Paint.Picture" comme cela :
OleFields.CreateEmbed(CD_image, Paint.Picture)
Mais Visual basic m'affiche un "Erreur de compilation: Attendu: = " si je laisse ma ligne comme ca ... j'avoue ne pas comprendre ...
Si quelqu'un peut m'aider je suis pas contre parce que la je sature