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 :

Tkinter fonction .place() problème


Sujet :

Tkinter Python

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau membre du Club
    Inscrit en
    Septembre 2010
    Messages
    6
    Détails du profil
    Informations forums :
    Inscription : Septembre 2010
    Messages : 6
    Par défaut Tkinter fonction .place() problème
    Bonjour,


    Mon problème est simple.
    La solution est plus compliqué.

    Imaginons un code python très simple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    from Tkinter import * 
     
    def toto(): 
          entry.state(NORMAL) 
     
    root = Tk() 
    entry = Entry(root, state=DISABLED).place(x=10, y=10) 
     
    button = Button(root, text="Ajouter", command=toto).place(x=10, y=40) 
    root.config(height=100,width=150) 
     
    root.mainloop()

    Voici le problème :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    entry.state=NORMAL 
    AttributeError: 'NoneType' object has no attribute 'state'
    Je soupçonne que la fonction ".place()" ne me permet pas d'utiliser les fonctions du widget Entry.

    Avez vous une solution pour résoudre le problème ?

    Cordialement,

    R3.

  2. #2
    Nouveau membre du Club
    Inscrit en
    Septembre 2010
    Messages
    6
    Détails du profil
    Informations forums :
    Inscription : Septembre 2010
    Messages : 6
    Par défaut Autre exemple
    Je continue a faire mes tests et toujours la même erreur :

    Exemple qui fonctionne :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    import Tkinter as tk
     
    def papa():
    	entr.config(state=tk.NORMAL)
     
    root = tk.Tk()
     
    button = tk.Button(root, text="root", command=papa)
    button.pack()
     
    entr = tk.Entry(root, state=tk.DISABLED)
    entr.pack()
     
    root.mainloop()
    Exemple qui ne fonctionne pas:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    import Tkinter as tk
     
    def papa():
    	entr.config(state=tk.NORMAL)
     
    root = tk.Tk()
     
    button = tk.Button(root, text="root", command=papa).place(x=5, y=10)
     
    entr = tk.Entry(root, state=tk.DISABLED).place(x=45, y=12)
     
    root.mainloop()

    Toujours pas de solution ??

  3. #3
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 741
    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 741
    Par défaut
    Salut
    Vérifiez déjà que:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    entr = tk.Entry(root, state=tk.DISABLED).place(x=45, y=12)
    retourne une Entry plutôt que None.
    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  4. #4
    Nouveau membre du Club
    Inscrit en
    Septembre 2010
    Messages
    6
    Détails du profil
    Informations forums :
    Inscription : Septembre 2010
    Messages : 6
    Par défaut
    Salut,

    hum... je ne comprends pas exactement comment tu veux que je veux fasse ça !?!
    Si tu as essayé les deux exemples... on voit bien quand même quil y a quelque chose d'incompatible ! Mais je ne trouve nul par sur le net des infos sur ça !
    Que veux que j'essayes alors pour ton test ?

  5. #5
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 741
    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 741
    Par défaut
    Exemple:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    entr = tk.Entry(root, state=tk.DISABLED).place(x=45, y=12)
    print entr
    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  6. #6
    Nouveau membre du Club
    Inscrit en
    Septembre 2010
    Messages
    6
    Détails du profil
    Informations forums :
    Inscription : Septembre 2010
    Messages : 6
    Par défaut
    ...
    Il me print un None !
    Qu'est ce que cela veut dire ?
    Ou que dois je faire ?

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

Discussions similaires

  1. [Mail] fonction mail : problème d'utilisation
    Par leclone dans le forum Langage
    Réponses: 4
    Dernier message: 13/02/2007, 17h02
  2. [RegEx] Fonction preg_match problème
    Par wylls dans le forum Langage
    Réponses: 2
    Dernier message: 13/12/2006, 17h06
  3. [Fonction](recursive) Problème pour dresser un arbre
    Par Invité dans le forum Langage
    Réponses: 4
    Dernier message: 21/11/2006, 13h35
  4. Fonction ASP: problème avec popup
    Par claralavraie dans le forum ASP
    Réponses: 6
    Dernier message: 07/02/2006, 10h31
  5. histoire de fonction avec problème sur arguments
    Par bébé dans le forum Langage
    Réponses: 5
    Dernier message: 07/01/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