OVH Cloud OVH Cloud

Problèmes concernant les objets packages

8 réponses
Avatar
Willi2004
Salut à tous!
J'ai créé un formulaire contenant un cadre d'objet indépendant dans lequel
j'insère des images bitmaps.
Le problème est que quelques fois contre toute attente, les images que
j'essaye d'insérer s'affichent sous forme d'objets packages.
Pour m'en sortir, j'ai à chaque fois eu recours à la restauration du système
à une date ultérieure. Toutes tentatives pour résoudre le problème par une
autre méthode se sont soldées par un échec.
Pourriez-vous s'il vous plait m'indiquer une voie de sortie autre que la
restauration du système?

8 réponses

Avatar
David PONDA
Tu boss sur koi exactement ?

"Willi2004" a écrit dans le message de
news:
Salut à tous!
J'ai créé un formulaire contenant un cadre d'objet indépendant dans lequel
j'insère des images bitmaps.
Le problème est que quelques fois contre toute attente, les images que
j'essaye d'insérer s'affichent sous forme d'objets packages.
Pour m'en sortir, j'ai à chaque fois eu recours à la restauration du
système
à une date ultérieure. Toutes tentatives pour résoudre le problème par une
autre méthode se sont soldées par un échec.
Pourriez-vous s'il vous plait m'indiquer une voie de sortie autre que la
restauration du système?




Avatar
Willi2004
Je travail sur Access 2003 et ce que j'essaye de créer un petit logitiel de
gesion du personnel de l'établissement scolaire où j'enseigne.
J'ai donc besoin d'insérerer des photos d'identité du personnel en question
d'où ce problème qui se pose quelquefois, et qui démeurre jusqu'à ce qu'une
restauration du système intervienne.
Peux-tu m'aider?
Avatar
David PONDA
En ce qui concerne l'insertion des photos ds une BD, j'ai moi aussi
rencontré ce pb, mais j'ai pu contourné le probleme :) en travaillant
directement avec les images mappés sur un bouton... si tu peux jongler cool
avec le controle bouton et ca possibilté de recevoir des image bitmap (bmp)
alors tu px reussir a y integrer des photo.
En fait le truc est simple :
1. tu cree un grand bouton de la taille de la photo
2. par defaut tout les eleves (ou autres...) on une photo vide (un fichier
blanc.bmp avec la mention "pas de photo") comme bitmap de fond.
3. avec une procedure sous_click tu permet a l'utilisateur de charger une
photo de l'eleve (format bmp seulement).

bon je px te filer le code pour etude si tu vx
Dave

"Willi2004" a écrit dans le message de
news:
Je travail sur Access 2003 et ce que j'essaye de créer un petit logitiel
de
gesion du personnel de l'établissement scolaire où j'enseigne.
J'ai donc besoin d'insérerer des photos d'identité du personnel en
question
d'où ce problème qui se pose quelquefois, et qui démeurre jusqu'à ce
qu'une
restauration du système intervienne.
Peux-tu m'aider?


Avatar
Jacques
Bonjour,

A toutes fins utiles et sauf erreur, tu as dans Exemples de bases de
données d'Access "Les comptoirs" un formulaire Employé qui gére les
photos.

Salutations.


En ce qui concerne l'insertion des photos ds une BD, j'ai moi aussi
rencontré ce pb, mais j'ai pu contourné le probleme :) en travaillant
directement avec les images mappés sur un bouton... si tu peux jongler cool
avec le controle bouton et ca possibilté de recevoir des image bitmap ( bmp)
alors tu px reussir a y integrer des photo.
En fait le truc est simple :
1. tu cree un grand bouton de la taille de la photo
2. par defaut tout les eleves (ou autres...) on une photo vide (un fichier
blanc.bmp avec la mention "pas de photo") comme bitmap de fond.
3. avec une procedure sous_click tu permet a l'utilisateur de charger une
photo de l'eleve (format bmp seulement).

bon je px te filer le code pour etude si tu vx
Dave

"Willi2004" a écrit dans le messa ge de
news:
Je travail sur Access 2003 et ce que j'essaye de créer un petit logit iel
de
gesion du personnel de l'établissement scolaire où j'enseigne.
J'ai donc besoin d'insérerer des photos d'identité du personnel en
question
d'où ce problème qui se pose quelquefois, et qui démeurre jusqu' à ce
qu'une
restauration du système intervienne.
Peux-tu m'aider?




Avatar
Willi2004
Merci à vous pour les réponses que vous avez bien voulu m'adresser.
Je demanderai à DAVID de me "filer" le code dont il a parlé.
Ce sera pour moi un plus à ne pas négliger.
Merci d'avance, DAVID.
Avatar
David PONDA
Ok Willi, donne moi le tps de faire un copie coller...


"Willi2004" a écrit dans le message de
news:
Merci à vous pour les réponses que vous avez bien voulu m'adresser.
Je demanderai à DAVID de me "filer" le code dont il a parlé.
Ce sera pour moi un plus à ne pas négliger.
Merci d'avance, DAVID.



Avatar
David PONDA
ok will voici le topo
au debut je cree un bouton et le nomme "Photo"
je le declare donc ainsi

Photo.Picture = "" '*** pour qu'aucune image n'y soit attribuée à la
creation d'un nouvel eleve.

Alors j'ai une table _Eleve_ avec un champ "LogoPath" qui enregistre le
chemin d'ou se trouve la photo de chaque eleve et qui est un champ invisible
dans mon formulaire.
sur l'ouverture du formulaire, je verifie si ce chemin contient les données
de la photo :

Private Sub Form_Load()
On Error Resume Next
If IsNull(LogoPath) Then
Photo.Picture = ""
Else
Photo.Picture = LogoPath
End If
End Sub

Puis je verifie si l'utilisateur a doublé-cliqué sur le bouton et je charge
le processus qui permet de uploader la photo dans le bouton :

Private Sub Photo_DblClick(Cancel As Integer)
Dim strLink As String

' Gestion des erreurs
On Error GoTo Catch01

' récupération du chemin physique de la photo
' par la boite de dialogue
strLink = OuvrirUnFichier(Me.hwnd, "Sélectionner la Photo " & "", 1)

' si la boite renvoie une adresse non nulle
If Len(strLink) > 0 Then
' tentative d'affichage de la photo
Me.Photo.Picture = strLink
End If

Exit Sub

OK... tu me suis j'espere... le gros truc est t'implémenter la fonction
OuvrirUnFichier :) qui est depuis VB 4.0 est tres facile grace à
CommonDlgBox, mais sur Access, y a pas ce Common...machin... truc... faut
creer un truc du genre et c'est la ou j'adore la programmation :)
Dans ton module Global... d'abord .... les Constantes

Private Const OFN_ReadOnly = &H1
Private Const OFN_OverWritePrompt = &H2
Private Const OFN_HideReadOnly = &H4
Private Const OFN_NoChangeDir = &H8
Private Const OFN_ShowHelp = &H10
Private Const OFN_EnableHook = &H20
Private Const OFN_EnableTemplate = &H40
Private Const OFN_EnableTemplateHandle = &H80
Private Const OFN_NoValiDate = &H100
Private Const OFN_AllowMultiSelect = &H200
Private Const OFN_ExtensionDifferent = &H400
Private Const OFN_PathMustExist = &H800
Private Const OFN_FileMustExist = &H1000
Private Const OFN_CreatePrompt = &H2000
Private Const OFN_ShareAware = &H4000
Private Const OFN_NoReadOnlyReturn = &H8000
Private Const OFN_NoTestFileCreate = &H10000

Private Const OFN_ShareFallThrough = 2
Private Const OFN_ShareNoWarn = 1
Private Const OFN_ShareWarn = 0

'Puis la declaration de la structure du fichier a ouvrir...
'-- Charger Fichier
'Déclaration de l'API
Public Declare Function GetOpenFileName Lib "comdlg32.dll" Alias _
"GetOpenFileNameA" (pOpenfilename As OpenFileName) As
Long

'Structure du fichier
Private Type OpenFileName
lStructSize As Long
hwndOwner As Long
hInstance As Long
lpstrFilter As String
lpstrCustomFilter As String
nMaxCustFilter As Long
nFilterIndex As Long
lpstrFile As String
nMaxFile As Long
lpstrFileTitle As String
nMaxFileTitle As Long
lpstrInitialDir As String
lpstrTitle As String
flags As Long
nFileOffset As Integer
nFileExtension As Integer
lpstrDefExt As String
lCustData As Long
lpfnHook As Long
lpTemplateName As String
End Type


Public Function OuvrirUnFichier(Handle As Long, _
Titre As String, _
TypeRetour As Byte, _
Optional TitreFiltre As String, _
Optional TypeFichier As String) As String
'OuvrirUnFichier est la fonction a utiliser dans le formulaire pour ouvrir
_
la boîte de dialogue de sélection d'un fichier.
'Explication des paramètres
'Handle = le handle de la fenêtre (Me.Hwnd)
'Titre = Titre de la boîte de dialogue
'TypeRetour (Définit la valeur, de type String, renvoyée par la
fonction)
'1 = Chemin complet + Nom du fichier
'2 = Nom fichier seulement
'TitreFiltre = Titre du filtre
'Exemple: Fichier Access
'Non utile si aucun filtre n'est a spécifier
'TypeFichier = Extention du fichier (Sans le .)
'Exemple: MDB
'Non utile si aucun filtre n'est a spécifier

Dim StructFile As OpenFileName
Dim sFiltre As String

'Construction du filtre en fonction des arguments spécifiés
If Len(TitreFiltre) > 0 And Len(TypeFichier) > 0 Then
sFiltre = TitreFiltre & " (" & TypeFichier & ")" & Chr$(0) & "*." &
TypeFichier & Chr$(0)
End If
sFiltre = sFiltre & "Tous (*.*)" & Chr$(0) & "*.*" & Chr$(0)


'Configuration de la boîte de dialogue
With StructFile
.lStructSize = Len(StructFile) 'Initialisation de la grosseur de la
structure
.hwndOwner = Handle 'Identification du handle de la fenêtre
.lpstrFilter = sFiltre 'Application du filtre
.lpstrFile = String$(254, vbNullChar) 'Initialisation du fichier '0' x
254
.nMaxFile = 254 'Taille maximale du fichier
.lpstrFileTitle = String$(254, vbNullChar) 'Initialisation du nom du
fichier '0' x 254
.nMaxFileTitle = 254 'Taille maximale du nom du fichier
.lpstrTitle = Titre 'Titre de la boîte de dialogue
.flags = OFN_HideReadOnly 'Option de la boite de dialogue
End With

If (GetOpenFileName(StructFile)) Then 'Si un fichier est sélectionné
Select Case TypeRetour
Case 1: OuvrirUnFichier = Trim$(StructFile.lpstrFile)
Case 2: OuvrirUnFichier = Trim$(StructFile.lpstrFileTitle)
End Select
End If

End Function

Voila, si tu block fais moi signe par mail si tu vx je ss la
Dave
Bonne chance

"Willi2004" a écrit dans le message de
news:
Merci à vous pour les réponses que vous avez bien voulu m'adresser.
Je demanderai à DAVID de me "filer" le code dont il a parlé.
Ce sera pour moi un plus à ne pas négliger.
Merci d'avance, DAVID.



Avatar
Willi2004
Merci infiniment David.
Ton aide me sera, j'en suis convaincu, très précieuse.
Encore merci.