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 :

problème d'instanciation du widget Entry [Python 3.X]


Sujet :

Tkinter Python

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti Avatar de zardoz45
    Homme Profil pro
    Chef de projet en SSII, retraité
    Inscrit en
    Décembre 2011
    Messages
    30
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Chef de projet en SSII, retraité
    Secteur : Conseil

    Informations forums :
    Inscription : Décembre 2011
    Messages : 30
    Par défaut problème d'instanciation du widget Entry
    bonjour,
    Sous LinuxMint, avec Python 3.8.10 et Tk 8.6,
    pour simplifier (?) le code d'une application Tkinter, j'ai regroupé sur une seule instruction :
    • l'instanciation du widget Entry
    • l'appel de la méthode grid.

    Je constate que cette écriture provoque un défaut d'instanciation (?) : la zone de saisie s'affiche correctement dans l'application, mais l'objet semble ne pas avoir un type défini ('Nonetype') :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    # version initiale qui fonctionne
    F01Entry01 = Entry(FrameF01, width = 3)
    F01Entry01.grid(sticky = W, padx = 0, pady = 2, row = 2, column = 2)
    # version "simplifiée" qui plante !
    F01Entry01 = Entry(FrameF01, width = 3).grid(sticky = W, padx = 0, pady = 2, row = 2, column = 2)
    # l'utilisation qui provoque l'erreur
        int(F01Entry01.get())
    AttributeError: 'NoneType' object has no attribute 'get'
    # autre essai d'accès à l'objet F01Entry01
    print (F01Entry01.keys())
    AttributeError: 'NoneType' object has no attribute 'keys'
    Est-ce que cette syntaxe est incorrecte ?

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

    Citation Envoyé par zardoz45 Voir le message
    Est-ce que cette syntaxe est incorrecte ?
    La syntaxe est correcte. Mais une règle Python est qu'appliquer une méthode a un objet retournera None sauf pour les objets non mutable (où il va bien falloir retourner le nouvel objet).
    D'où: A = list() retourne une liste (vide) qui sera assigné a A. Par contre A = list().append(3) retournera un None (et A sera associé à None).

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

  3. #3
    Membre averti Avatar de zardoz45
    Homme Profil pro
    Chef de projet en SSII, retraité
    Inscrit en
    Décembre 2011
    Messages
    30
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Chef de projet en SSII, retraité
    Secteur : Conseil

    Informations forums :
    Inscription : Décembre 2011
    Messages : 30
    Par défaut
    ok,
    merci W

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

Discussions similaires

  1. [pERl TK] Obtenir le texte sélectionné d'un widget entry
    Par dreydrey dans le forum Interfaces Graphiques
    Réponses: 1
    Dernier message: 18/01/2007, 09h18
  2. Réponses: 7
    Dernier message: 18/07/2006, 12h23
  3. problème pour instancier une class
    Par gronaze dans le forum C++
    Réponses: 8
    Dernier message: 30/06/2006, 12h21
  4. [Perl/Tk] widget Entry ou équivalent ?
    Par Mr6 dans le forum Interfaces Graphiques
    Réponses: 2
    Dernier message: 13/04/2006, 07h34
  5. [Tkinter] ecrire un texte dans un widget entry
    Par thierry_b dans le forum Tkinter
    Réponses: 3
    Dernier message: 15/12/2005, 11h38

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