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

Tkinter Python Discussion :

défilement d'image python 3 tkinter


Sujet :

Tkinter Python

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2017
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2017
    Messages : 9
    Points : 0
    Points
    0
    Par défaut défilement d'image python 3 tkinter
    bonjour a tous,
    je suis entrain de finaliser un projet isn et comme amélioration je doit faire une bouton solution du jeu que j'ai fait.
    dans cet solution je voudrai faire défiler des image dans l'ordre tout simplement. j'ai réaliser un codage mais j'ai un léger programme le code prend en compte qu'une seul image.
    voila mon 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
    from tkinter import*
     
    def boucle():
        lab.configure(image=image1)
        lab.configure(image=image2)
        lab.configure(image=image3)
        lab.configure(image=image4)
        lab.configure(image=image5)
        lab.configure(image=image6)
        lab.configure(image=image7)
        lab.configure(image=image8)
        fen.after(500, boucle)
     
    fen=Tk()
    lab=Label(fen)
    lab.pack()
    image1=PhotoImage(file='img0.gif')
    image2=PhotoImage(file='img1.gif')
    image3=PhotoImage(file='img2.gif')
    image4=PhotoImage(file='img3.gif')
    image5=PhotoImage(file='img4.gif')
    image6=PhotoImage(file='img5.gif')
    image7=PhotoImage(file='img6.gif')
    image8=PhotoImage(file='img7.gif')
     
     
    boucle()
     
    fen.mainloop()
    je n'ai aucun message d'erreur voila merci d'avance pour vos réponse.
    Fichiers attachés Fichiers attachés

  2. #2
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2017
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2017
    Messages : 9
    Points : 0
    Points
    0
    Par défaut expliquer le code
    J'ai juste oublié de vous expliquer se que j'ai fait, donc le code j'ai tout d'abord défini mes image puis j'ai mis un label relier a la boucle. Dans la boucle j'ai appeler les image dans l'ordre que je voulais puis dans la dernière ligne de la fonction j'ai mis un fen.apres qui va permettre de de répéter le défilement a l'infini.

  3. #3
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 287
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 287
    Points : 36 778
    Points
    36 778
    Par défaut
    Salut,

    Vous avez une discussion récente sur le même sujet (peut être un de vos collègues).

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  4. #4
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2017
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2017
    Messages : 9
    Points : 0
    Points
    0
    Par défaut Re
    Citation Envoyé par wiztricks Voir le message
    Salut,

    Vous avez une discussion récente sur le même sujet (peut être un de vos collègues).

    - W
    Citation Envoyé par gameur Voir le message
    J'ai juste oublié de vous expliquer se que j'ai fait, donc le code j'ai tout d'abord défini mes image puis j'ai mis un label relier a la boucle. Dans la boucle j'ai appeler les image dans l'ordre que je voulais puis dans la dernière ligne de la fonction j'ai mis un fen.apres qui va permettre de de répéter le défilement a l'infini.
    J'ai vu la discussion je mon suis aider mais j'ai encore se léger problème si vous pouvez m'aider

  5. #5
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 287
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 287
    Points : 36 778
    Points
    36 778
    Par défaut
    Salut,

    Citation Envoyé par gameur Voir le message
    J'ai vu la discussion je mon suis aider mais j'ai encore se léger problème si vous pouvez m'aider
    Si vous voulez de l'aide, çà serait mieux de commencer par décrire le problème rencontré et de l'illustrer avec le code que vous avez fait. Cela permettrait à un lecteur de la discussion de vous suggérer une piste de solution... Et éviter qu'on perde du temps à vous tirer les vers du nez.
    note: vous devez savoir ce qu'est une liste et utiliser un index pour accéder à ses éléments.... Et si je ne vois pas çà dans votre code, c'est que vous êtes sauté dans tkinter sans avoir pris le temps de maîtriser les bases.

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  6. #6
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2017
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2017
    Messages : 9
    Points : 0
    Points
    0
    Par défaut Re
    Citation Envoyé par wiztricks Voir le message
    Salut,



    Si vous voulez de l'aide, çà serait mieux de commencer par décrire le problème rencontré et de l'illustrer avec le code que vous avez fait. Cela permettrait à un lecteur de la discussion de vous suggérer une piste de solution... Et éviter qu'on perde du temps à vous tirer les vers du nez.
    note: vous devez savoir ce qu'est une liste et utiliser un index pour accéder à ses éléments.... Et si je ne vois pas çà dans votre code, c'est que vous êtes sauté dans tkinter sans avoir pris le temps de maîtriser les bases.

    - W
    Oui j'ai donner mon code en haut et j'ai expliquer ce que je cherche à faire. Je cherche à faire défiler des images dans un ordre précis pas aléatoirement avec random... j'ai donc d'abord défini mes image avec PhotoImage puis j'ai mis un label pour afficher les images et que j'ai relier à ma fonction boucle, dans ma fonction boucle j'ai configuré mon label avec chaque image dans l'ordre que je voulais et a la fin de la boucle j'ai mis Fen.after qui permet de répété en continu d'afficher les images dans l'ordre. Voilà mais je c'est pas pourquoi je vois pas d'où viens le problème lorsque je lance le code tout se passe bien pas de message d'erreur mais sur la fenêtre y à seulement la dernière image qui s'affiche et y à pas de défilement voila je suis pas bon pour expliquer les chose je mon excuse d'avance.

  7. #7
    Membre confirmé

    Homme Profil pro
    Bidouilleur
    Inscrit en
    Avril 2016
    Messages
    721
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Bidouilleur

    Informations forums :
    Inscription : Avril 2016
    Messages : 721
    Points : 503
    Points
    503
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par gameur Voir le message
    Oui j'ai donner mon code en haut et j'ai expliquer ce que je cherche à faire. Je cherche à faire défiler des images dans un ordre précis pas aléatoirement avec random...
    Que ce soit avec random ou dans un ordre précis, le principe est le même.
    Là tu as juste à incrémenter un index à chaque fois, et le remettre à 0 quand tu arrives au dernier élément de ta liste.
    Et un itérateur serait approprié pour le faire, voir https://docs.python.org/3/library/it...tertools.cycle , qui conviendrait bien à cette tâche.
    Le temps ronge l'amour comme l'acide.

  8. #8
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 287
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 287
    Points : 36 778
    Points
    36 778
    Par défaut
    Citation Envoyé par gameur Voir le message
    mais sur la fenêtre y à seulement la dernière image qui s'affiche et y à pas de défilement voila
    Si vous écrivez une fonction comme:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    >>> def f():
    ...     a = 1
    ...     a = 2
    ...     a = 3
    ...     return a
    ...
    >>>
    est ce que ses appels successifs retourneront 1 puis 2 puis 3 puis 1.... ?
    Ben non, çà retournera toujours 3.

    Et si vous écrivez:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    def boucle():
        lab.configure(image=image1)
    ...
        lab.configure(image=image8)
        fen.after(500, boucle)
    il n'y a aucune raison pour que çà affiche autre chose que la dernière image.

    Citation Envoyé par gameur Voir le message
    Je cherche à faire défiler des images dans un ordre précis pas aléatoirement avec random...
    Que l'image à afficher soit choisie au hasard ou soit la suivante, il y a toujours une histoire de liste et d'index.
    Et si vous n'avez pas eu ou pas pris le temps d'apprendre ces concepts là, vous ne saurez que recopier bêtement la solution qu'on vous donne... autant attendre celle votre prof. donnera.

    note: il y a une différence entre vous aider à comprendre et faire les exercices à votre place.

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  9. #9
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2017
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2017
    Messages : 9
    Points : 0
    Points
    0
    Par défaut
    Citation Envoyé par wiztricks Voir le message
    Si vous écrivez une fonction comme:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    >>> def f():
    ...     a = 1
    ...     a = 2
    ...     a = 3
    ...     return a
    ...
    >>>
    est ce que ses appels successifs retourneront 1 puis 2 puis 3 puis 1.... ?
    Ben non, çà retournera toujours 3.

    Et si vous écrivez:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    def boucle():
        lab.configure(image=image1)
    ...
        lab.configure(image=image8)
        fen.after(500, boucle)
    il n'y a aucune raison pour que çà affiche autre chose que la dernière image.


    Que l'image à afficher soit choisie au hasard ou soit la suivante, il y a toujours une histoire de liste et d'index.
    Et si vous n'avez pas eu ou pas pris le temps d'apprendre ces concepts là, vous ne saurez que recopier bêtement la solution qu'on vous donne... autant attendre celle votre prof. donnera.

    note: il y a une différence entre vous aider à comprendre et faire les exercices à votre place.

    - W
    Bonjour le problème c que je n'est vraiment pas de temps car je passe mon orale dans 2j sa m'arrangerait vraiment de me donner un code pour faire fonctionner se que je cherche je me chargerai de comprendre par la suite si vous me rendez ce service je vous serait très reconnaissant. J'ai passer tout la journée d'hier à essayer de le faire fonctionner voilà merci d'avance.

  10. #10
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 287
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 287
    Points : 36 778
    Points
    36 778
    Par défaut
    Citation Envoyé par gameur Voir le message
    'arrangerait vraiment de me donner un code pour faire fonctionner se que je cherche je me chargerai de comprendre par la suite si vous me rendez ce service je vous serait très reconnaissant. J'ai passer tout la journée d'hier à essayer de le faire fonctionner voilà merci d'avance.
    ben amusez vous avec çà:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    from tkinter import *
    import time
     
    label = Label()
    label.pack()
    for x in range(8):
        image = PhotoImage(file='img%d.gif' % x)
        label['image'] = image
        label.update()
        time.sleep(0.5)
    et comme on dit chez moi: "à cheval donné, on ne regarde pas les dents"

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  11. #11
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2017
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2017
    Messages : 9
    Points : 0
    Points
    0
    Par défaut
    Citation Envoyé par wiztricks Voir le message
    ben amusez vous avec çà:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    from tkinter import *
    import time
     
    label = Label()
    label.pack()
    for x in range(8):
        image = PhotoImage(file='img%d.gif' % x)
        label['image'] = image
        label.update()
        time.sleep(0.5)
    et comme on dit chez moi: "à cheval donné, on ne regarde pas les dents"

    - W
    Merci énormément sa fonctionne très bien just une dernière question qu'est se que je pourrais rajouter pour que le défilement ne s'arrête pas, que sa continu en boucle. Je c'est que pour vous ce n'est logique mais le manque de temps m'oblige à faire sa c'est ma faute je me suis mal organiser voilà.

  12. #12
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 287
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 287
    Points : 36 778
    Points
    36 778
    Par défaut
    Citation Envoyé par gameur Voir le message
    Merci énormément sa fonctionne très bien just une dernière question qu'est se que je pourrais rajouter pour que le défilement ne s'arrête pas, que sa continu en boucle. Je c'est que pour vous ce n'est logique mais le manque de temps m'oblige à faire sa c'est ma faute je me suis mal organiser voilà.
    Du code encore plus pourri genre:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    from tkinter import *
    import time
     
    label = Label()
    label.pack()
    while True:
        for x in range(8):
            image = PhotoImage(file='img%d.gif' % x)
            label['image'] = image
            label.update()
            time.sleep(0.5)
    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  13. #13
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2017
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2017
    Messages : 9
    Points : 0
    Points
    0
    Par défaut
    Citation Envoyé par wiztricks Voir le message
    Du code encore plus pourri genre:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    from tkinter import *
    import time
     
    label = Label()
    label.pack()
    while True:
        for x in range(8):
            image = PhotoImage(file='img%d.gif' % x)
            label['image'] = image
            label.update()
            time.sleep(0.5)
    - W
    merci tout fonctionne tres bien j'ai juste quelque question a propos du programme pour mon orale: le label.update sert a quoi exactement et dans image le file que vous avez utiliser comment y fait pour prendre toute les image sans les avoir défini et se que sa serai possible de le remplacer par une liste d'image pour que sa soit plus claire.

  14. #14
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 287
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 287
    Points : 36 778
    Points
    36 778
    Par défaut
    Citation Envoyé par gameur Voir le message
    merci tout fonctionne tres bien j'ai juste quelque question a propos du programme pour mon orale: le label.update sert a quoi exactement et dans image le file que vous avez utiliser comment y fait pour prendre toute les image sans les avoir défini et se que sa serai possible de le remplacer par une liste d'image pour que sa soit plus claire.
    Je vous rappelle ce que vous aviez dit précédemment:

    Citation Envoyé par gameur
    Bonjour le problème c que je n'est vraiment pas de temps car je passe mon orale dans 2j sa m'arrangerait vraiment de me donner un code pour faire fonctionner se que je cherche je me chargerai de comprendre par la suite si vous me rendez ce service je vous serait très reconnaissant. J'ai passer tout la journée d'hier à essayer de le faire fonctionner voilà merci d'avance.
    La documentation tkinter est disponible en français...
    Maintenant, il faut que vous fassiez votre partie du contrat.

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  15. #15
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2017
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2017
    Messages : 9
    Points : 0
    Points
    0
    Par défaut
    Citation Envoyé par wiztricks Voir le message
    Je vous rappelle ce que vous aviez dit précédemment:



    La documentation tkinter est disponible en français...
    Maintenant, il faut que vous fassiez votre partie du contrat.

    - W
    oui exactement mais le label.update je ne trouve sa nul part d'expliquer j'ai fait des recherche sur internet. Je c'est que update veux dire mise a jour mais après je ne vois rien je me suis dit qu'un dernier éclaircissement m'aiderai bien.

  16. #16
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 287
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 287
    Points : 36 778
    Points
    36 778
    Par défaut
    Citation Envoyé par gameur Voir le message
    Je c'est que update veux dire mise a jour mais après je ne vois rien je me suis dit qu'un dernier éclaircissement m'aiderai bien.
    Dans la documentation mentionnée, c'est ici.

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  17. #17
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2017
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2017
    Messages : 9
    Points : 0
    Points
    0
    Par défaut
    Citation Envoyé par wiztricks Voir le message
    Dans la documentation mentionnée, c'est ici.

    - W
    Merci beaucoup je ne c'est pas comment vous remercier. Je vais défendre votre partie de code du mieux que je pourrais mardi prochain durant mon orale. je vous on dirait des nouvelles. C'est super ce que vous faitez continuer .

Discussions similaires

  1. [Python 3.X] Défilement D'images sur Tkinter
    Par YokAtom dans le forum Général Python
    Réponses: 9
    Dernier message: 02/06/2017, 20h17
  2. Défilement d'images de bas en haut dans un tableau
    Par Viper7 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 1
    Dernier message: 17/04/2006, 23h18
  3. [FLASH MX2004] Défilement simple images dynamiques
    Par ladybird dans le forum Intégration
    Réponses: 1
    Dernier message: 17/04/2006, 20h29
  4. [FLASH MX2004] Défilement d'images
    Par julien1906 dans le forum Flash
    Réponses: 16
    Dernier message: 02/03/2006, 18h29
  5. [FLASH MX]Ordre de défilement des images
    Par San Soussy dans le forum Flash
    Réponses: 3
    Dernier message: 28/05/2004, 16h37

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