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

PyQt Python Discussion :

Transfert entre classes


Sujet :

PyQt Python

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2009
    Messages
    55
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Octobre 2009
    Messages : 55
    Par défaut Transfert entre classes
    Bonjour,

    j'ai un probleme concernant l'action d'un bouton declenchee depuis une classe sur un composant appartenant a une autre interface. Pour me faire comprendre, voici mon code:

    Code de mon interface principale:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    class Apply:
    	def __init__(self):
    		QtCore.QObject.connect( ui_pos.spinBox_posX, QtCore.SIGNAL("valueChanged(int)")  , self.changePosX )
     
    	def changePrecisePosX(self):
    		X = ui_pos.spinBox_posX.value()
    		Y = ui_pos.spinBox_posY.value()
    		labelPosXYCam().moveCursor(X, Y)
    avec ui_pos une boite de dialogue (QDialog), et moveCursor() la methode suivante, dans la classe suivante:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    class labelPosXYCam(QtGui.QLabel):
     
    	def __init__(self, parent = None):
    		QtGui.QLabel.__init__(self, parent)
    		self.cursor_Label_PositionXY = QtGui.QLabel(self)
    		self.cursor_Label_PositionXY.setObjectName('label_cursor')
    		self.cursor_Label_PositionXY.setPixmap(QtGui.QPixmap("ressources/product.ico"))
    		self.cursor_Label_PositionXY.setGeometry(QtCore.QRect(130-16, 130-16, 32, 32))
    		self.cursor_Label_PositionXY.setVisible(True)
     
    	def moveCursor(self, newX, newY):
    		self.cursor_Label_PositionXY.setGeometry(QtCore.QRect(newX-16, newY-16, 32, 32))

    Donc avec mon code, j'aimerais, lorsque je clique sur spinBox_posX, que cet action appelle la fonction moveCursor(), dans laquelle le QLabel cursor_Label_PositionXY doit bouger.

    Ceci dit ce n'est pas le cas: il n'y a aucune erreur mais le QLabel ne bouge pas !! Du coup je pense que je n'accede pas correctement a cet objet, mais je ne vois pas comment faire ??

  2. #2
    Membre éprouvé
    Inscrit en
    Avril 2010
    Messages
    99
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Avril 2010
    Messages : 99
    Par défaut
    Bonjour,

    si tu n'as pas trop changé tes noms de variable depuis, ça doit être un truc du genre

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    class Apply:
    	def __init__(self):
    		QtCore.QObject.connect( ui_pos.spinBox_posX, QtCore.SIGNAL("valueChanged(int)")  , self.changePosX )
     
    	def changePrecisePosX(self):
    		X = ui_pos.spinBox_posX.value()
    		Y = ui_pos.spinBox_posY.value()
    		ui_pos.label_locationXY.moveCursor(X, Y)
    Mais bon, je me trompe peut-être mais j'ai l'impression que tu ne maîtrises pas très bien les concepts de la programmation orientée objet (objet, classe, méthode, héritage, classe abstraite, ...).
    Je pense qu'il faudrait que tu passes plus de temps à bien assimiler ces concepts. Il y a des bouquins très bien sur ça. Pas la peine d'en chercher un sur Python en particulier. Les concepts sont les mêmes dans tous les langages. Sans ça, tu vas continuer à galérer sur des problèmes qui sont, j'ai l'impression, pas vraiment liés à PyQt mais plutôt à une mauvaise compréhension des concepts évoqués plus haut.
    Attention, ce n'est pas une critique, juste un conseil.

    Je ne sais pas quoi te conseiller comme bouquin ou tutoriel web.
    Sans doute que d'autres personnes pourront te conseiller.

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2009
    Messages
    55
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Octobre 2009
    Messages : 55
    Par défaut
    Merci encore Biribibi, ca marche !!

    Mais bon, je me trompe peut-être mais j'ai l'impression que tu ne maîtrises pas très bien les concepts de la programmation orientée objet (objet, classe, méthode, héritage, classe abstraite, ...).
    Je pense qu'il faudrait que tu passes plus de temps à bien assimiler ces concepts. Il y a des bouquins très bien sur ça. Pas la peine d'en chercher un sur Python en particulier. Les concepts sont les mêmes dans tous les langages. Sans ça, tu vas continuer à galérer sur des problèmes qui sont, j'ai l'impression, pas vraiment liés à PyQt mais plutôt à une mauvaise compréhension des concepts évoqués plus haut.
    Attention, ce n'est pas une critique, juste un conseil.
    Je suis tout a fait d'accord A vrai dire je programme pas mal en Java et niveau POO je m'en sors plutot bien. J'ai commence le Python il y a quelques semaines et c'est vrai que je m'emmele un peu les pinceaux et je suis un peu perdu niveau objet, instance, variable, etc...

    Quand j'ai un souci comme celui ci j'essaie de faire le parallele avec le Java mais sans succes, ca ne doit pas etre la bonne solution !! Je m'en vais de ce pas rectifier le tir !! Je vais me renseigner sur les bouquins et autres tutos !!

    En tout ca merci encore

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

Discussions similaires

  1. Accèss à des fonctions entre classes
    Par vincetrader dans le forum C++
    Réponses: 4
    Dernier message: 08/09/2005, 13h45
  2. transfert entre deux BD
    Par champijulie dans le forum PostgreSQL
    Réponses: 19
    Dernier message: 05/07/2005, 14h38
  3. [AS2] liaison entre classe et symbole
    Par ooyeah dans le forum ActionScript 1 & ActionScript 2
    Réponses: 1
    Dernier message: 04/07/2005, 09h41
  4. DTS erreur pendant transfert entre 2 bases
    Par jc2 dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 23/11/2004, 15h31
  5. Transfert entre deux tables
    Par nyarla01 dans le forum Langage SQL
    Réponses: 5
    Dernier message: 18/10/2004, 14h36

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