IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

IHM Discussion :

Recherche innovation pour améliorer la vitesse d'affichage des photos


Sujet :

IHM

  1. #1
    Membre éprouvé
    Inscrit en
    Décembre 2007
    Messages
    1 235
    Détails du profil
    Informations forums :
    Inscription : Décembre 2007
    Messages : 1 235
    Par défaut Recherche innovation pour améliorer la vitesse d'affichage des photos
    Bonjours à tous, j'ai actuelement une solution pour visualiser des photos, mais cela m'oblige à ouvrir à chaque fois un formulaire, dans le quel je charge la photo. Cela prend donc pas mal de temps à chaque fois.

    Je cherche donc à avoir des retour d'experience, ou des idées pour aquerir une solution plus rapide et peut etre plus pratique.

    Pour le moment, j'affiche mes données dans une zone de liste et j'appel ma photo à l'aide d'un bouton, voici le code de ce bouton:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    Private Sub cmdPhotos_Click()
    Dim Reference As String
    Dim chemin As String
    Dim verif As String
     
    If IsNull(Me.lstResults.Column(8)) Then
    MsgBox ("Veuillez selectionner une ligne dans la liste de résultat")
    Exit Sub
    End If
     
    Reference = Me.lstResults.Column(8)
    chemin = "X:\Maintenance\Public\GMAO\Photos\Piéces\" & Reference & ".JPG"
    verif = Dir(chemin)
     
    If verif = "" Then
    MsgBox ("Aucune photo n'est associée à cet article")
    Exit Sub
    Else
    DoCmd.OpenForm "Photos/Plans"
    [Form_Photos/Plans].ImgPhotosPlans.Picture = "X:\Maintenance\Public\GMAO\Photos\Piéces\" & Reference & ".JPG"
    End If
    End Sub
    PS: Mes photos ne se trouvent pas dans la base, mais sur le réseau.

    Merci

  2. #2
    Modérateur

    Homme Profil pro
    Inscrit en
    Octobre 2005
    Messages
    15 410
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2005
    Messages : 15 410
    Par défaut
    Tiens-tu absolument à ouvrir tes photo dans un formulaire Access ou pourrais-tu vivre si elle s'ouvrait à l'extérieure de ton appli ?

    A+
    Vous voulez une réponse rapide et efficace à vos questions téchniques ?
    Ne les posez pas en message privé mais dans le forum, vous bénéficiez ainsi de la compétence et de la disponibilité de tous les contributeurs.
    Et aussi regardez dans la FAQ Access et les Tutoriaux Access. C'est plein de bonnes choses.

  3. #3
    Membre éprouvé
    Inscrit en
    Décembre 2007
    Messages
    1 235
    Détails du profil
    Informations forums :
    Inscription : Décembre 2007
    Messages : 1 235
    Par défaut
    Ba c'est mieux si elle s'affiche dans la base de données, après si c'est pas un formulaire, mais si par exemple c'est une fenêtre qui vient s'ouvrir devant mon application sa ne m dérange pas.

    Si c'est plus rapide...

  4. #4
    Modérateur

    Homme Profil pro
    Inscrit en
    Octobre 2005
    Messages
    15 410
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2005
    Messages : 15 410
    Par défaut
    Alors tu peux essayer avec le code qui suit qui ouvre n'importe quoi sur un poste.

    À mettre dans un module.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
     
    Option Compare Database
    Option Explicit
     
    Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" _
                                  (ByVal hwnd As Long, ByVal lpszOp As String, _
                                   ByVal lpszFile As String, ByVal lpszParams As String, _
                                   ByVal LpszDir As String, ByVal FsShowCmd As Long) _
                                   As Long
    Declare Function GetDesktopWindow Lib "user32" () As Long
     
    Const SW_SHOWNORMAL = 1
     
    Const SE_ERR_FNF = 2
    Const SE_ERR_PNF = 3
    Const SE_ERR_ACCESSDENIED = 5
    Const SE_ERR_OOM = 8
    Const SE_ERR_DLLNOTFOUND = 32
    Const SE_ERR_SHARE = 26
    Const SE_ERR_ASSOCINCOMPLETE = 27
    Const SE_ERR_DDETIMEOUT = 28
    Const SE_ERR_DDEFAIL = 29
    Const SE_ERR_DDEBUSY = 30
    Const SE_ERR_NOASSOC = 31
    Const ERROR_BAD_FORMAT = 11
     
    Public Function StartDoc(DocName As String) As Long
        Dim Scr_hDC As Long
        Scr_hDC = GetDesktopWindow()
        StartDoc = ShellExecute(Scr_hDC, "open", DocName, _
                                "", "C:\", SW_SHOWNORMAL)
    End Function
     
     
     
    Public Function ErrorCheck(r As Long) As Integer
     
        Dim msg As String
     
        If r <= 32 Then
            'There was an error
            Select Case r
                Case SE_ERR_FNF
                    msg = "Fichier non trouvé"
                Case SE_ERR_PNF
                    msg = "Chemin non trouvé"
                Case SE_ERR_ACCESSDENIED
                    msg = "Accès refusé"
                Case SE_ERR_OOM
                    msg = "Mémoire insufisante"
                Case SE_ERR_DLLNOTFOUND
                    msg = "DLL non trouvée"
                Case SE_ERR_SHARE
                    msg = "Une violation de partage a eu lieu"
                Case SE_ERR_ASSOCINCOMPLETE
                    msg = "Association de fichier incomplète ou invalide"
                Case SE_ERR_DDETIMEOUT
                    msg = "Dépassement du temps d'attente pour DDE"
                Case SE_ERR_DDEFAIL
                    msg = "Échec de transactiob DDE"
                Case SE_ERR_DDEBUSY
                    msg = "DDE occupé"
                Case SE_ERR_NOASSOC
                    msg = "Pas de programme associé à l'extention du fichier"
                Case ERROR_BAD_FORMAT
                    msg = "Fichier EXE invalide ou erreur dans une image EXE"
                Case Else
                    msg = "Erreur" & r & " inconnue"
            End Select
            MsgBox msg & " "
        End If
    End Function
    Vous voulez une réponse rapide et efficace à vos questions téchniques ?
    Ne les posez pas en message privé mais dans le forum, vous bénéficiez ainsi de la compétence et de la disponibilité de tous les contributeurs.
    Et aussi regardez dans la FAQ Access et les Tutoriaux Access. C'est plein de bonnes choses.

  5. #5
    Membre éprouvé
    Inscrit en
    Décembre 2007
    Messages
    1 235
    Détails du profil
    Informations forums :
    Inscription : Décembre 2007
    Messages : 1 235
    Par défaut
    Re merci pour ton code mais sa marche comment?

  6. #6
    Rédacteur/Modérateur

    Avatar de ClaudeLELOUP
    Homme Profil pro
    Chercheur de loisirs (ayant trouvé tous les jours !)
    Inscrit en
    Novembre 2006
    Messages
    20 596
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 80
    Localisation : Belgique

    Informations professionnelles :
    Activité : Chercheur de loisirs (ayant trouvé tous les jours !)
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20 596
    Par défaut
    Bonjour,

    par exemple comme ceci dans la fenêtre d'exécution
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ? StartDoc("C:\BROUSMICHE\divers\Démo.doc")
    Merci marot_r
    J'ai copié dans ma boîte à outils

  7. #7
    Membre confirmé
    Homme Profil pro
    Développeur Java
    Inscrit en
    Mai 2008
    Messages
    221
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 221
    Par défaut
    Enfin ce que Claude n'a pas précisé c'est qu'il faut que tu copies tout le bout de code dans un module (vide de préference pour l'organisation) avant de faire l'appel
    Et je pense que le ? dans l'appel est de trop ^^

    En tout cas bien pratique comme petite fonction, merci bien !

Discussions similaires

  1. Chrome 27 améliore la vitesse de chargement des pages
    Par Hinault Romaric dans le forum Google Chrome
    Réponses: 3
    Dernier message: 22/05/2013, 16h07
  2. Améliorer la vitesse de chargement des images
    Par danielhagnoul dans le forum jQuery
    Réponses: 2
    Dernier message: 05/03/2009, 09h07
  3. recherche code pour améliorer mon site
    Par ALTINEA dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 07/08/2007, 18h05
  4. Réponses: 6
    Dernier message: 25/10/2006, 11h47
  5. pb affichage des photos incorporées par balises html
    Par laville dans le forum Balisage (X)HTML et validation W3C
    Réponses: 4
    Dernier message: 01/04/2005, 11h47

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo