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 insertion canva toplevel [Python 3.X]


Sujet :

Tkinter Python

  1. #1
    Candidat au Club
    Homme Profil pro
    Enseignant
    Inscrit en
    Avril 2017
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Avril 2017
    Messages : 2
    Points : 2
    Points
    2
    Par défaut problème insertion canva toplevel
    Bonsoir à tous,
    Débutant en python (et en programmation aussi). J'ai voulu adapter un exemple de Swimmen (programme oscillographe) pour faire un tracé dans une fenêtre secondaire avec Toplevel. Le problème est que je ne comprend pas pourquoi l'objet de la classe héritée de canva créé ne s'insère pas dans la fenêtre secondaire. (cf code d'exemple ci dessous)


    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
    from tkinter import *
     
    class OscilloGraphe(Canvas):
     
        def __init__(self, boss =None, larg=200, haut=150):
     
        # construction du widget parent :
            Canvas.__init__(self)                           # appel au constructeur 
            self.configure(width=larg, height=haut)         # de la classe parente 
            self.create_oval(20,20,100,100)
     
    root = Tk()
    root.title('principale')
    fenbis=Toplevel()
    fenbis.title('fenbis')
    gra = OscilloGraphe(fenbis, 250, 180)   # canva que je n'arrive pas à placer dans fenbis
    gra.pack()
    root.mainloop()
    Merci d'avance pour votre aide.
    seb

  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 781
    Points
    36 781
    Par défaut
    Salut

    Citation Envoyé par seb6788 Voir le message
    Le problème est que je ne comprend pas pourquoi l'objet de la classe héritée de canva créé ne s'insère pas dans la fenêtre secondaire.
    Relisez votre code: la création du Canvas est faite par l'instruction Canvas.__init__(self)...
    Par quelle magie le parent pourra être la fenêtre souhaitée?

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

  3. #3
    Candidat au Club
    Homme Profil pro
    Enseignant
    Inscrit en
    Avril 2017
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Avril 2017
    Messages : 2
    Points : 2
    Points
    2
    Par défaut
    Citation Envoyé par wiztricks Voir le message
    Salut



    Relisez votre code: la création du Canvas est faite par l'instruction Canvas.__init__(self)...
    Par quelle magie le parent pourra être la fenêtre souhaitée?

    - W

    Bonjour,
    J'avais pas saisi le concept d'héritage. Je pensais naïvement que la classe oscillographe , par héritage, reprenait automatiquement le "même mode d'instanciation" que canvas sans rien faire. Maintenant ca va mieux.
    Encore merci.
    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
     
    from tkinter import *
     
    class OscilloGraphe(Canvas):
     
        def __init__(self,fenetre, boss =None, larg=200, haut=150):
     
        # construction du widget parent :
            Canvas.__init__(self,fenetre)                           # appel au constructeur 
            self.configure(width=larg, height=haut)         # de la classe parente 
            self.create_oval(20,20,100,100)
     
    root = Tk()
    root.title('principale')
    fenbis=Toplevel()
    fenbis.title('fenbis')
    gra = OscilloGraphe(fenbis, larg=250, haut=180)   # canva que je n'arrive pas à placer dans fenbis
    gra.pack()
    root.mainloop()

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

Discussions similaires

  1. [debutant][Applet] problèmes insertion applet java
    Par mlequim dans le forum Applets
    Réponses: 5
    Dernier message: 11/07/2005, 09h50
  2. [ZEOSLIB] Problème Insertion dans une table
    Par moscovisci dans le forum Bases de données
    Réponses: 1
    Dernier message: 09/06/2005, 12h05
  3. [javascript] problème insertion image
    Par Pwill dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 18/05/2005, 16h12
  4. Réponses: 5
    Dernier message: 12/04/2005, 09h45
  5. problème insertion
    Par sonialem2000 dans le forum Bases de données
    Réponses: 5
    Dernier message: 14/07/2004, 01h45

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