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 :

Frames qui n'apparaissent pas


Sujet :

Tkinter Python

  1. #1
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2022
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2022
    Messages : 22
    Points : 21
    Points
    21
    Par défaut Frames qui n'apparaissent pas
    Boujour (ou bonsoir),

    Je me retrouve une nouvelle fois face à un problème : après avoir créé deux frames pour y ranger deux labels contenant des images, ceux-ci ne s'affichent pas, et pourtant, aucun message d'erreur n'apparait.

    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
    import tkinter as tk
    from tkinter import *
     
     
    compte = 0
     
     
    def new():
        for widget in window.winfo_children():
            widget.pack_forget()
     
     
    def code():
        def choix():
            frame4.destroy()
            frame5.destroy()
            nom1.pack()
            nom2.pack()
            if compte == 1:
                frame2.pack(side=LEFT)
                frame3.pack(side=RIGHT)
            demarrer()
     
        global image_nom1, image_nom2, nom1, nom2, frame2, frame3
        image_nom1 = PhotoImage(file='Exemple1.gif')
        image_nom2 = PhotoImage(file='Exemple2.gif')
        frame2 = tk.Frame(window)
        frame3 = tk.Frame(window)
        frame4 = tk.Frame(window)
        frame5 = tk.Frame(window)
        nom1 = tk.Label(frame3, image=image_nom1)
        nom2 = tk.Label(frame2, image=image_nom2)
        bouton_nom1 = tk.Button(frame4, image=image_nom1, command=choix)
        bouton_nom2 = tk.Button(frame5, image=image_nom2, command=choix)
        bouton_nom1.pack()
        bouton_nom2.pack()
        frame4.pack(expand=YES, side=LEFT)
        frame5.pack(expand=YES, side=RIGHT)
        if compte == 4:
            frame4.destroy()
            frame5.destroy()
     
     
    def demarrer():
        new()
        global compte
        compte = compte + 1
        if compte < 4:
            code()
     
     
    window = tk.Tk()
     
    start = tk.Button(window, text='Start', command=demarrer)
    start.pack()
     
    window.mainloop()
    Le code ci-dessus est censé faire apparaître deux boutons qui, lorsqu'on clique dessus, stockent ces images dans des frames à part (ici, la frame2 et la frame3). L'oppération est ensuite répéter 3 fois.


    Merci d'avance pour votre attention et votre aide.

  2. #2
    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 776
    Points
    36 776
    Par défaut
    Salut,

    A chaque fois qu'on clique sur un Button, on appelle choix qui se termine par démarrer qui appelle new qui détruit tout avant de revenir à l'état précédent.

    Quand vous ne comprenez plus ce que fait votre code, recommencez depuis zéro en changeant sa structure.

    Python fait juste ce que vous lui avez demandé de faire... reste à comprendre ce que vous lui avez demandé mais c'est vous qui codez: au plus c'est compliqué, au moins vous aller y comprendre ce qu'il s'y passe... et comme c'est un code tout pourri (sinon il serait lisible), on ne va pas aider très longtemps.

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

  3. #3
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2022
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2022
    Messages : 22
    Points : 21
    Points
    21
    Par défaut
    Merci beaucoup pour cette réponse (même si je me rend compte que c'était vraiment idiot et évident comme problème), désolé d'avoir dérangé pour ça.

    Bonne soirée ou bonne journée.

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 17/01/2008, 12h10
  2. background qui n'apparaissent pas
    Par leto02 dans le forum Mise en page CSS
    Réponses: 3
    Dernier message: 01/08/2007, 15h06
  3. Images qui n'apparaissent pas
    Par portu dans le forum Word
    Réponses: 5
    Dernier message: 11/04/2007, 19h15
  4. Images qui n'apparaissent pas
    Par lhpp dans le forum AWT/Swing
    Réponses: 7
    Dernier message: 14/02/2007, 10h58
  5. Animations Flash qui n'apparaissent pas !
    Par Ed777 dans le forum Flash
    Réponses: 3
    Dernier message: 04/10/2006, 16h48

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