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 :

init


Sujet :

Tkinter Python

  1. #1
    bm
    bm est déconnecté
    Membre confirmé

    Homme Profil pro
    Freelance
    Inscrit en
    Octobre 2002
    Messages
    874
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Drôme (Rhône Alpes)

    Informations professionnelles :
    Activité : Freelance
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Octobre 2002
    Messages : 874
    Points : 556
    Points
    556
    Billets dans le blog
    6
    Par défaut init
    Bonjour,

    Je veux ajouter une fonction qui est dans un bouton , pour ne pas devoir appuyer sur ce bouton au début.
    Ne comprenant pas tout avec tk pouvez vous apporter votre codage :

    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
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    class Clock(tk.Label):
        _timer = None
        _ctime = None
     
        def __init__(self, *args, **kwds):
            tk.Label.__init__(self, *args, **kwds)
     
     
        def _update(self, delay=200):
            now = time.strftime("%H:%M:%S")
            self['text']='(... Reception serie ...)'
            # command serie debut :
            #rcv = port.read(50)
            if rcv != "":
                ofu = open("/home/pi/Rs_Arduino/rcv.txt","a")
    	    tt=time.strftime("%d/%m/%y;%H;%M;")
    	    data=tt+rcv
                ofu.write(data)
                ofu.close()
            # command serie fin :
            if self._ctime != now:
                self._ctime = self['text'] = now
            self._timer = self.after(delay,self._update)
     
        def do_start(self):
            if not self._timer:
                self['text']='(... Reception serie ...)'
                self._update()
     
        def do_stop(self):
            if self._timer:
                self.after_cancel(self._timer)
                self['text'] = '(... Stop ...)'
                self._timer = None
     
        def destroy(self):
            self.do_stop()
            tk.Label.destroy(self)
     
    if __name__ == '__main__':
        root = tk.Tk()
        root.title("Bus")
        clock = Clock()
        clock.pack()
        #tk.Button(text='Debut de trame => (...1...0)', command=clock.do_start).pack()
        tk.Button(text='Fin de trame => (nul..nul)', command=clock.do_stop).pack()
        tk.mainloop()
    #tk.Button(text='Debut de trame => (...1...0)', command=clock.do_start).pack()
    C'est la fonction do_start qu'il faut démarrer avec def __init__(self, *args, **kwds):


    @+
    Cdlt

  2. #2
    Expert éminent

    Homme Profil pro
    Inscrit en
    Octobre 2008
    Messages
    4 300
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2008
    Messages : 4 300
    Points : 6 780
    Points
    6 780
    Par défaut
    Salut,

    En l'appelant directement, ça ne marche pas ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
        tk.Button(text='Fin de trame => (nul..nul)', command=clock.do_stop).pack()
        clock.do_stop()
        tk.mainloop()

  3. #3
    Membre éprouvé
    Homme Profil pro
    Aucune activité
    Inscrit en
    Novembre 2011
    Messages
    505
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Aucune activité

    Informations forums :
    Inscription : Novembre 2011
    Messages : 505
    Points : 926
    Points
    926
    Par défaut
    Citation Envoyé par bm Voir le message
    Je veux ajouter une fonction qui est dans un bouton , pour ne pas devoir appuyer sur ce bouton au début.

    #tk.Button(text='Debut de trame => (...1...0)', command=clock.do_start).pack()
    C'est la fonction do_start qu'il faut démarrer avec def __init__(self, *args, **kwds):
    Bonjour,
    Et avec (dans le init):
    self.do_start()

    Clodion

  4. #4
    bm
    bm est déconnecté
    Membre confirmé

    Homme Profil pro
    Freelance
    Inscrit en
    Octobre 2002
    Messages
    874
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Drôme (Rhône Alpes)

    Informations professionnelles :
    Activité : Freelance
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Octobre 2002
    Messages : 874
    Points : 556
    Points
    556
    Billets dans le blog
    6
    Par défaut
    @VinsS: ok , c'est ce qu'il faut à première vue

    Mais self['text']='(... Reception serie ...)'
    qui faisait clignoter "... Reception serie ..."
    ne clignote plus

    En mode de réception série je vais attendre 1 heure pour voir si
    les data sont dirigées comme il le faut


Discussions similaires

  1. init.ora sous windows ?
    Par szdavid dans le forum Administration
    Réponses: 16
    Dernier message: 17/08/2007, 17h59
  2. Processus.. adoption d'un processus par init
    Par Francois Trazzi dans le forum Administration système
    Réponses: 15
    Dernier message: 17/01/2005, 13h56
  3. [FEDORA] Problème d'init
    Par Ultra-FX dans le forum RedHat / CentOS / Fedora
    Réponses: 7
    Dernier message: 13/04/2004, 10h22
  4. [debutant] [servlets] methode init()
    Par be_on_edge dans le forum Servlets/JSP
    Réponses: 5
    Dernier message: 01/03/2004, 15h11
  5. [CR7] Erreur CanNot initalize OLE
    Par elifqaoui dans le forum SAP Crystal Reports
    Réponses: 4
    Dernier message: 17/07/2003, 22h03

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