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

VB 6 et antérieur Discussion :

[VB6] Faire Clignoter une IMAGE


Sujet :

VB 6 et antérieur

  1. #1
    Membre régulier Avatar de Lucas42
    Inscrit en
    Janvier 2006
    Messages
    301
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 301
    Points : 97
    Points
    97
    Par défaut [VB6] Faire Clignoter une IMAGE
    Bonjour , j'aimerai savoir s'il existe un autre code pour faire clignoter une image ?
    Voici mon code pour le clignotement grace à un timer et un select case
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Private Sub Timer2_Timer()    ' Timer pour le CLIGNOTEMENT des Images
        clignotement = clignotement + 1
        Select Case clignotement
            Case 0
                Image1(index).Visible = True
            Case 1
                Image1(index).Visible = False
        End Select
        clignotement = 0
    End Sub
    merci d'avance
    amicalement lucas

  2. #2
    Membre éclairé
    Avatar de Asdorve
    Homme Profil pro
    Inscrit en
    Mars 2004
    Messages
    1 336
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Pyrénées Orientales (Languedoc Roussillon)

    Informations forums :
    Inscription : Mars 2004
    Messages : 1 336
    Points : 718
    Points
    718
    Par défaut
    cette méthode te va pas?

  3. #3
    Inactif  
    Avatar de jmfmarques
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    3 784
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 3 784
    Points : 4 674
    Points
    4 674
    Par défaut
    Je suppose que clignotement est une variable globale
    ton code est bon, sauf que tu gagnerais à utiliser une valeur booleenne plustôt que 1 et 0, peut-être .
    ou encore jouer avec une valeur 1 et ensuite : clignotement = - clignotement

  4. #4
    Membre actif Avatar de riesseg
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    415
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 415
    Points : 251
    Points
    251
    Par défaut
    y'a mieux, tu ne fais pas appelle a un booleen.

    tu met ton timer a 101 ( au lieu de 100, adapte aec ta valeur)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     if Mod(timer.Value, 2) Then
    visible = true
    else
    visible =false
    end if
    mod(A, X) est un modulo.
    resentement, il sert a savoir si timer.value est pair ou impaire (donne 0 si pair, 1 si impaire) et donc toutes les 101ms, il changera de parité.
    donc ton image sera visible ou non :p

    mais je suis pas sur du timer.value

  5. #5
    Membre actif Avatar de AdHoc
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    245
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 245
    Points : 239
    Points
    239
    Par défaut
    Bonjour,
    plus court
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Private Sub Timer2_Timer()' Timer pour le CLIGNOTEMENT des Images
      Image1(index).Visible = not(Image1(index).Visible)
    End Sub

  6. #6
    Membre régulier Avatar de Lucas42
    Inscrit en
    Janvier 2006
    Messages
    301
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 301
    Points : 97
    Points
    97
    Par défaut
    Adhoc , ton code fonctionne si tu desire faire clignoter UNE image .
    Dans mon cas ca irais presque , mis a par que lorsque mon index change de valeur ( cad qu'une autre image est demandée ) , limage precedente reste visible ....

    mais c un bout de code à garder

  7. #7
    Membre régulier Avatar de Lucas42
    Inscrit en
    Janvier 2006
    Messages
    301
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 301
    Points : 97
    Points
    97
    Par défaut
    Baste ca , un autre soucis , c'est dans le mm esprit que le clignotement , dans le sens ou je ve faire apparaitre une form , 10s aprés l'apparision d'une Image , le soucis est :

    Mon timer est reglé à 150ms , or comme je veux afficher ma form 10s plus tard , ca donne 10 000 / 150 = 66 .

    G donc créé une variable nommée msg_defaut , et qui s'incremente à chaque tour de timer , et chrono en main , ma form s'affiche au bout de 5s

    1 interval correspond bien au tps mi par le timer pour réaliser l'intégralité des lignes de codes contenue dans la fonction Timer

    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
    Private Sub Timer2_Timer()                              ' Timer pour le CLIGNOTEMENT des Images
        clignotement = clignotement + 1
        msg_defaut = msg_defaut + 1
        Select Case clignotement
            Case 0
                Image1(index).Visible = True
            Case 1
                Image1(index).Visible = False
        End Select
        clignotement = 0
        msg_defaut = msg_defaut + 1
        If msg_defaut = 66 Then                               ' normalement compte 10s
            msg_defaut = 0
            Warning.Show
        End If
    End Sub

  8. #8
    Inactif  
    Avatar de jmfmarques
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    3 784
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 3 784
    Points : 4 674
    Points
    4 674
    Par défaut
    je ne vois qu'une explication : ta variable globale msg_defaut a une valeur autre que 0 au lancement de ton timer
    Tu dois pouvoir en vérifier la valeur par un msgbox juste avant le lancement du timer !
    profites-en pour faire, au même moment, un msgbox de l'interval du timer (on ne sait jamais) !

  9. #9
    Membre régulier Avatar de Lucas42
    Inscrit en
    Janvier 2006
    Messages
    301
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 301
    Points : 97
    Points
    97
    Par défaut
    en effet JMFMARQUES , la variable msg_defaut , ne commence pas à 0 , mais à 2-4 , donc c pas a cause de ca que ca divise mon tps par 2 . jai donc mi 124 au lieu de 66 , et mes 10s sont respectés
    aller comprendre pk

  10. #10
    Membre régulier Avatar de Lucas42
    Inscrit en
    Janvier 2006
    Messages
    301
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 301
    Points : 97
    Points
    97
    Par défaut
    Bon aller ttlm merci pour vos precision , et encore bcp d'interrogation à propos de cette histoire d'interval ....

    merci à tous

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

Discussions similaires

  1. Faire clignoter une image en fond de cellule de tableau
    Par koKoTis dans le forum Mise en page CSS
    Réponses: 6
    Dernier message: 09/12/2013, 22h43
  2. Comment faire clignoter une image ?
    Par smaella dans le forum Imagerie
    Réponses: 5
    Dernier message: 01/07/2009, 16h51
  3. Faire clignoter une image avec la SDL?
    Par francoisd42 dans le forum SDL
    Réponses: 2
    Dernier message: 29/04/2009, 16h31
  4. [VB6 ] Comment faire pivoter une IMAGE
    Par Lucas42 dans le forum VB 6 et antérieur
    Réponses: 23
    Dernier message: 09/05/2006, 17h06
  5. [VB6] COmment Faire Clignoter une image ?
    Par Lucas42 dans le forum VB 6 et antérieur
    Réponses: 7
    Dernier message: 25/04/2006, 11h29

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