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

VBA Access Discussion :

clignotement image dans formulaire [AC-2010]


Sujet :

VBA Access

  1. #1
    Membre actif
    Homme Profil pro
    Inscrit en
    Mars 2009
    Messages
    408
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Eure et Loir (Centre)

    Informations professionnelles :
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Mars 2009
    Messages : 408
    Points : 216
    Points
    216
    Par défaut clignotement image dans formulaire
    Bonjour,
    pouvez vous m'aide pour gerer ce petit probleme :
    Selon une condition dans un formulaire, j ai une image qui doit clignoter, le declenchement se passe bien. Le probleme, c'est quand je passe a l'enregistrement suivant le clignotement continu. Voici le code que j'ai trouvé sur le forum et que j'ai adapté :
    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
    Sub clignotementHorloge()
     
    Dim Datelimite As Date
     
    Datelimite = "10/03/2012"
     
    With Form_CH_PreCom
     
        If .Te_DateDemande > Datelimite Then
            'clignote
         Dim a As String
     
            a = Timer
            Do
            Do Until a + 0.5 <= Timer
            DoEvents
            Loop
            If .Im_DemandeRetard.Visible = True Then .Im_DemandeRetard.Visible = False Else .Im_DemandeRetard.Visible = True
            a = Timer
            Loop
            Else
     
            .Im_DemandeRetard.Visible = False
         exit sub
     
        End If
     
    End With
     
    End Sub
    Comment arreter ce clignotement?
    merci pour votre aide

  2. #2
    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 : 79
    Localisation : Belgique

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

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

    Au lieu d'une fonction publique, tu dois adapter ton code et l'inclure dans l'événement "Sur activation" de ton formulaire.
    Alors, à chaque enregistrement le processus va
    - soit faire clignoter
    - soit empêcher le clignotement

    selon le contenu de Te_DateDemande dans l'enregistrement actif.

  3. #3
    Membre actif
    Homme Profil pro
    Inscrit en
    Mars 2009
    Messages
    408
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Eure et Loir (Centre)

    Informations professionnelles :
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Mars 2009
    Messages : 408
    Points : 216
    Points
    216
    Par défaut
    Merci beaucoup pour ton aide,
    Mais ca ne marche pas. Je ne l'ai peut etre pas adapté comme il fallait
    voici le code :
    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
     
    Private Sub Form_Current()
     
    Dim Datelimite As Date
     
    Datelimite = "10/03/2012"
     
    With Form_CH_PreCom
     
    .Im_DemandeRetard.Visible = False
     
        If .Te_DateDemande > Datelimite Then
            'clignote
         Dim a As String
     
            a = Timer
            Do
            Do Until a + 0.5 <= Timer
            DoEvents
            Loop
            If .Im_DemandeRetard.Visible = True Then .Im_DemandeRetard.Visible = False Else .Im_DemandeRetard.Visible = True
            a = Timer
            Loop
     
            Else
     
            .Im_DemandeRetard.Visible = False
     
        End If
     
    End With
     
    End Sub
    merci opur votre aide

  4. #4
    Membre averti
    Homme Profil pro
    Amateur
    Inscrit en
    Octobre 2010
    Messages
    205
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Amateur

    Informations forums :
    Inscription : Octobre 2010
    Messages : 205
    Points : 360
    Points
    360
    Par défaut
    Je me permet de vous proposer d'utiliser la minuterie intégrée au formulaire :

    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
    Private Sub Form_Current()
     
        Dim Datelimite As Date
     
        Datelimite = CDate("10/03/2012")
     
        With Form_CH_PreCom
     
            If .Te_DateDemande > Datelimite Then
                .TimerInterval = 1000    'a peu près 1 s
            Else
                .TimerInterval = 0    'coupe la minuterie
                .Im_DemandeRetard.Visible = False    'cache le contrôle
            End If
     
        End With
    End Sub
    et dans l'évènement Sur minuterie, qui se déclenche à chaque cycle


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Private Sub Form_Timer()
     
       Form_CH_PreCom.Im_DemandeRetard.Visible = Not Form_CH_PreCom.Im_DemandeRetard.Visible    'inverse la propriété visible
     
    End Sub
    Si je puis me permettre une observation sur les types de variables :

    La variable "a" est déclarée comme chaîne de caractère et vous lui affecter un type numérique single Timer

    De même DateLimite aurait mieux été écris avec DateLimite=#03/10/2012# ou
    Datelimite = CDate("10/03/2012"), car là vous affectez une chaine à une variable date.


    Vous risquez un jour des surprises !

  5. #5
    Membre actif
    Homme Profil pro
    Inscrit en
    Mars 2009
    Messages
    408
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Eure et Loir (Centre)

    Informations professionnelles :
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Mars 2009
    Messages : 408
    Points : 216
    Points
    216
    Par défaut
    Merci beaucoup Pierre pour tous ces renseignements et corrections et ca marche

  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 : 79
    Localisation : Belgique

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

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20 596
    Points : 281 920
    Points
    281 920
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Private Sub Form_Timer()
     
       Form_CH_PreCom.Im_DemandeRetard.Visible = Not Form_CH_PreCom.Im_DemandeRetard.Visible    'inverse la propriété visible
     
    End Sub

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. image dans formulaire continu
    Par cbleas dans le forum IHM
    Réponses: 2
    Dernier message: 04/04/2007, 20h09
  2. Réponses: 2
    Dernier message: 28/06/2006, 15h21
  3. images dans formulaire
    Par defdef dans le forum IHM
    Réponses: 2
    Dernier message: 08/02/2006, 11h45
  4. Image dans formulaire
    Par jmde dans le forum Access
    Réponses: 2
    Dernier message: 23/09/2005, 16h24

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