Partage
  • Partager sur Facebook
  • Partager sur Twitter

Supprimé

Sujet résolu
Anonyme
    24 novembre 2016 à 21:22:05

    .

    -
    Edité par Anonyme 2 février 2022 à 20:47:39

    • Partager sur Facebook
    • Partager sur Twitter
      24 novembre 2016 à 23:43:43

      Bonjour,

      j'ai également besoin d'aide avec tkinter.

      Je suis débutant en développement et j'essais de créer une application. j'avance à taton mais je bloc sur un point.

      alors voila, mon projet est de créer une appli pour faire tourner sur un raspberry avec un ecran tactile.

      le but est de créer un clavier d'alarme + autres fonctions divers qui vont communiquer avec ma centrale domotique.

      Pour le moment j'ai 2 fichiers : main.py et UI.py

      dans mon fichier main.py :

      #! /usr/bin/python3
      # -*-coding:Utf-8 -*
      
      from UI import *
      from tkinter import *
      
      fenetre = Tk()
      clavier = Clavier(fenetre,width=480,height=320)
      
      clavier.mainloop()
      clavier.destroy()
      

      et dans mon UI.py :

      from tkinter import *
      from os import system
      
      class Clavier(Frame):
          """Notre fenêtre principale."""
          
          def __init__(self, fenetre, **kwargs):
              Frame.__init__(self, fenetre, **kwargs)
              self.place(height=280,width=420,x=0,y=0)
              
              self.frame1 = Frame(self,height=320,width=240,relief='raised',borderwidth=3)
              self.frame1.place(x=1,y=1)
              
              # Création des boutons test
              self.message = Label(self.frame1, text="Entrez le code")
              self.message.place(width=200,x=5,y=290)
              
              self.bouton_quitter = Button(self, text="Quitter",width=10, command=self.quit)
              self.bouton_quitter.place(x=370,y=285,bordermode=INSIDE)
              
              self.bouton_allumer=Button(self,text="ON",width=3,height=1,command=self.allumer)
              self.bouton_allumer.place(x=250,y=285)
              
              self.bouton_eteindre=Button(self,text="OFF",width=3,height=1,command=self.eteindre)
              self.bouton_eteindre.place(x=310,y=285)
              
              self.TextCode = Label(self.frame1,text="2")
              self.TextCode.place(x=4,y=280)
              self.pack()
              
              #Creation du Frame Clavier
              self.bouton_1=Button(self.frame1,text="1",width=5,height=4,command=self.cliquer('1'))
              self.bouton_1.place(x=4,y=3)
              
              self.bouton_2=Button(self.frame1,text="2",width=5,height=4,command=self.cliquer('2'))
              self.bouton_2.place(x=80,y=3)
              
          
          def cliquer(frame1,mavaleur):
              """Il y a eu un clic sur le bouton.
              On change la valeur du label TextCode.""""
              
              frame1.TextCode["text"] = "{}".format(mavaleur)
          
          def allumer(self):
              """action wget json allumer lumiere salon input_0"""
              system('wget --no-check-certificate --post-file set_state_on.json --output-document result.json https://192.168.1.1/api.php')
          
          def eteindre(self):
              """action wget json eteindre lumiere salon input_0"""
              system('wget --no-check-certificate --post-file set_state_off.json --output-document result.json https://192.168.1.1/api.php')
          
          def newvalue(frame1,old_V,new_V):
              frame1.TextCode["text"] = "{} {}".format(old_V,new_V)
      

      mon problème : ca ne fonctionne pas.

      depuis que j'ai ajouter l'argument "mavaleur" dans ma fonction "cliquer", celle-ci s'execute dès le lancement de mon application, sans même avoir appuyé sur le bouton. De plus, plus rien ne se passe lorsque je clique sur ces boutons.

      enfin, si j'essais de créer un bouton qui execute la commande "newvalue", ca ne fonctionne pas. j'ai un message d'erreur disant que "newvalue" n'est pas définit .....

      WHY ?? quelqu'un peu m'aider ?

      • Partager sur Facebook
      • Partager sur Twitter
      Anonyme
        27 novembre 2016 à 10:39:36

        .

        -
        Edité par Anonyme 2 février 2022 à 20:46:50

        • Partager sur Facebook
        • Partager sur Twitter

        Supprimé

        × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
        × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
        • Editeur
        • Markdown