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 :

Impossible de destroy() un button et une listbox


Sujet :

Tkinter Python

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2015
    Messages
    45
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2015
    Messages : 45
    Par défaut Impossible de destroy() un button et une listbox
    Bonjour,

    J'ai actuellement un bouton et une listbox rebelles impossible à destroy(), et ils ont en commun le fait que le bouton se crée dès que la listbox reçoit l'événement '<ButtonRelease-1>'.
    La listbox, elle est créée dans une classe qui hérite de Listbox jusque là rien d'anormal, mais lorsque je souhaite supprimer un de ces deux contrôles, rien ne se passe, pas d'erreur rien.
    Le problème doit surement venir de quelque part mais impossible à trouver ..

    Merci à vous, toute aide sera grandement apprécié.

  2. #2
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 738
    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 738
    Par défaut
    Salut,

    Si çà ne fonctionne pas, c'est que vous n'avez pas codé cela "proprement". Et si vous ne montrez pas votre code, difficile de vous dire quoi que ce soit...

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

  3. #3
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2015
    Messages
    45
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2015
    Messages : 45
    Par défaut
    Oui je le pense aussi pourtant je l'ai codé comme le reste de l'application et tout le reste fonctionne nickel, voici le code de la listbox :

    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
     
    class ListBateau(Listbox):
     
        def __init__(self, parent):
            Listbox.__init__(self, height=4, width=35 )
            self.parent = parent
            self.typeBateauSelect = None
     
            self.Initialize()
     
        def Initialize(self):
     
            if(self.size() != 0):
                self.ClearListBox()
     
            i = 0
            for bateau in self.parent.oActualPlayer.bateaux:
     
                if(bateau.position == None):
                    pos = '?'
                else:
                    pos = ""
                    for coord in bateau.position:
                        pos +=  coord + ' '
     
                self.insert(END, '[' + str(i) + '] [PDV : ' + str(bateau.pdv) + '] [POS : ' + pos + '] [' + bateau.orientation + ']')
                i += 1
            self.grid(row=3, column=0)
            self.bind('<ButtonRelease-1>', self.parent.SelectBateau)
     
        def ClearListBox(self):
            self.delete(0, (self.size() - 1))
    Fonction lancé quand l'événement sur la listbox apparait :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
        def SelectBateau(self, event):
            self.listBateau.typeBateauSelect = self.listBateau.curselection()[0]
            if(self.etat == 'preparatoir'):
                self.buttonChangeOrt = Button(self, text='Pivoter', command=self.grille.ChangeOrientation)
                self.buttonChangeOrt.grid(row=5)
    Et le code ou le bouton devrait disparaitre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    def NextPlayer(self):
            if(self.etat == 'preparatoir' and self.oActualPlayer == self.oPlayer2):
                self.buttonChangeOrt.destroy()
                self.etat = 'play'
                showinfo('Information', 'La partie commence, préparez vous !')
    Les deux derniers code se trouvent dans la classe master qui hérite donc de Tk

    Merci pour ton aide !

  4. #4
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 738
    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 738
    Par défaut
    Salut,

    Si vous ne postez pas un code fonctionnel et minimal (juste pour reproduire le problème)...
    Est ce que le "showinfo('Information', 'La partie commence, préparez vous !')" affiche quelque chose?

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

  5. #5
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2015
    Messages
    45
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2015
    Messages : 45
    Par défaut
    Oui tout fonctionne le code passe bien dans la condition, cependant le destroy() ne fonctionne pas.
    Après je vous ai donnez quelques morceaux de code, pour avoir un code fonctionnel il faudrait rajouter beaucoup trop de chose, ce serait trop long.
    Je vais voir ce que je peux rajouter pour vous aider.

    Merci.

    Citation Envoyé par wiztricks Voir le message
    Salut,

    Si vous ne postez pas un code fonctionnel et minimal (juste pour reproduire le problème)...
    Est ce que le "showinfo('Information', 'La partie commence, préparez vous !')" affiche quelque chose?

    - W

  6. #6
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 738
    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 738
    Par défaut
    Salut,

    Peut être ajouter un "self.update()" juste après l'appel à .destroy?

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

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

Discussions similaires

  1. [XL-2013] impossible de supprimer des Items dans une listbox à choix multiple
    Par dmoluc dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 16/11/2013, 16h34
  2. [AC-2003] Selection impossible dans une Listbox
    Par nawakbling dans le forum IHM
    Réponses: 2
    Dernier message: 19/02/2010, 10h11
  3. Réponses: 3
    Dernier message: 25/03/2004, 11h35
  4. [debutant][servlet]erreur causée par une listBox
    Par omega dans le forum Servlets/JSP
    Réponses: 2
    Dernier message: 05/03/2004, 10h53
  5. Icône a coté du texte dans une ListBox
    Par joce3000 dans le forum C++Builder
    Réponses: 6
    Dernier message: 05/12/2003, 02h25

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