Bonne syntaxe class python tkinter

[Résolu]
Signaler
Messages postés
3
Date d'inscription
mercredi 1 novembre 2000
Statut
Membre
Dernière intervention
4 avril 2012
-
Messages postés
3
Date d'inscription
mercredi 1 novembre 2000
Statut
Membre
Dernière intervention
4 avril 2012
-
Bonjour,

je voudrais savoir si le syntaxe de cette librairie python et correct ou non :
from Tkinter import *

class win(object):

    def __init__(self,name):
        self.mainWin = Tk()
        self.mainWin.title(name)

class winStd(win):
    
    def __init__(self,name):
        win.__init__(self,name)
        self.btExit Button(None, text 'Exit', command = self.mainWin.destroy )
        self.btExit.pack( fill X, side TOP, expand = 1 )

class winLaunch(winStd):

    def __init__(self,name,cmd):
        winStd.__init__(self,name)
        self.btLaunch Button(None, text 'Launch', command = cmd )
        self.btLaunch.pack( fill X, side TOP, expand = 1 )


Merci beaucoup.

Bye Keyve
A voir également:

4 réponses

Messages postés
18
Date d'inscription
samedi 4 juin 2005
Statut
Membre
Dernière intervention
29 mai 2013

Oui, si une classe fille redéfinit la méthode __init__, celle de la classe mère n'est plus appelée automatiquement. Comme tu fais des choses spécifiques dans tes __init__, il n'y a rien d'anormal.
Comme je ne pratique pas trop les fenêtres et widgets, je ne peux pas dire si ces classes te seront utiles à l'avenir.

Fred
Messages postés
18
Date d'inscription
samedi 4 juin 2005
Statut
Membre
Dernière intervention
29 mai 2013

Bonjour

Je n'ai rien vu d'anormal. Avec :
def c() : print 'command launched'

a=winLaunch('toto',c)

et eventuellement :
a.mainWin.mainloop()

ça marche. Quelle est exactement la question ?

Fred
Messages postés
3
Date d'inscription
mercredi 1 novembre 2000
Statut
Membre
Dernière intervention
4 avril 2012

En fait je voudrais me définir une librairie Python Tkinter avec des forme prédéfinie car la plus part des application que je vais avoir à développer ont presques toutes la même forme.

Comme je découvre la programmation objet avec python, je ne suis pas très sùr de m'y prendre correctement ou en tout cas intélligement !!!

Ma question porte principalement sur la mécanique du fonctionnement de l'héritage en python !!!

est-ce que je suis obligé de refaire appel à une class pour en hérité ?

exemple:
class win(object):

def __init__(self,name):
self.mainWin = Tk()
self.mainWin.title(name)

class winStd(win):

def __init__(self,name):
win.__init__(self,name)
self.btExit Button(None, text 'Exit', command = self.mainWin.destroy )
self.btExit.pack( fill X, side TOP, expand = 1 )

class winLaunch(winStd):

def __init__(self,name,cmd):
winStd.__init__(self,name)
self.btLaunch Button(None, text 'Launch', command = cmd )
self.btLaunch.pack( fill X, side TOP, expand = 1 )


j'ai mis en rouge la class, son héritage dans la class winStd et son rappel dans le def __init__.


Désolé si je suis brouillon mais je commence se boulôt et les forums de manière général ne sont pas ma tasse de thé !!

Merci

Bye Keyve
Messages postés
3
Date d'inscription
mercredi 1 novembre 2000
Statut
Membre
Dernière intervention
4 avril 2012

Merci pour ta réponse.

Bonne journée.


Bye Keyve