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 :

Activer les slots et signaux d'une nouvelle fenêtre qui s'ouvre à partir d'une autre fenêtre


Sujet :

PyQt Python

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Lycéen
    Inscrit en
    Octobre 2014
    Messages
    51
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Arabie Saoudite

    Informations professionnelles :
    Activité : Lycéen

    Informations forums :
    Inscription : Octobre 2014
    Messages : 51
    Points : 35
    Points
    35
    Par défaut Activer les slots et signaux d'une nouvelle fenêtre qui s'ouvre à partir d'une autre fenêtre
    Bonjour tout le monde,

    J'ai défini une classe fenetreSubsequente qui hérite de QDialog et une classe fenetrePrincipale qui dérive de QMainWindow. Parmi les attributs de fenêtrePrincipale un bouton lequel est associé à un slot qui crée une instance de type fenetreSubsequente. Je l'ai nommée fSubs. Après quoi, ce slot appelle successivement les méthodes show() et exec_() sur fSubs. J'ai envie de dire par là, affiche une deuxième fenêtre (de type fenetreSubsequente) et exécute la, c'est-à-dire saisis les actions de l'utilisateur sur cette fenêtre (appui bouton, fermeture, etc …) et exécute les slots associés à ses actions (définis dans la classe fenetreSubsequente).

    Ma question est : est ce les deux commandes show et exec_() font ce qui est demandées ?

    Malheureusement, je n'ai pas accès à pyqt pour le moment et je ne peux vérifier de moi même !

    Bien cordialement.

  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,

    Oui pour exec_() tandis que show() je ne l'utilise jamais pour les QDialog.

    Donc exec_() est sufisant.

  3. #3
    Nouveau membre du Club
    Homme Profil pro
    Lycéen
    Inscrit en
    Octobre 2014
    Messages
    51
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Arabie Saoudite

    Informations professionnelles :
    Activité : Lycéen

    Informations forums :
    Inscription : Octobre 2014
    Messages : 51
    Points : 35
    Points
    35
    Par défaut
    Ok merci VinsS.
    Sinon, j'essaie de créer un menu dans lequel l'utilisateur peut choisir la couleur de fond de la fenêtre principale. J'ajoute donc dans le def __init__ de la classe fenetrePrincipale ces quelques lignes :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
          menuApparence=self.menuBar().addMenu("&Apparence de la fenetre")
                    actionCouleur=menuApparence.addAction("&Couleur")
                    connect(actionCouleur,SIGNAL(triggered()),qApp,self.changeCouleur)
    Je définis le slot un peu plus loin dans la classe :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    def changeCouleur(self):
                    couleur=QtGui.QColorDialog.getColor(Qt.white,self)
                    palette=QtGui.QPalette()
                    palette.setColor(QtGui.QPalette.Background,couleur)
                    self.setAutoFillBackground(true)
                    self.setPalette(palette)
    Je ne suis pas sûr s'il faut mettre l'avant dernière ligne self.setAutoFillBackground(true) ou pas

  4. #4
    Nouveau membre du Club
    Homme Profil pro
    Lycéen
    Inscrit en
    Octobre 2014
    Messages
    51
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Arabie Saoudite

    Informations professionnelles :
    Activité : Lycéen

    Informations forums :
    Inscription : Octobre 2014
    Messages : 51
    Points : 35
    Points
    35
    Par défaut
    Ah, je viens de lire la doc et même si j'ai pas tout compris, j'ai l'impression que self.setAutoFillBackground(true) n'a rien à faire ici.

Discussions similaires

  1. Réponses: 1
    Dernier message: 29/07/2009, 22h20
  2. Appelé un timer à partir d'une nouvelle form
    Par abbd dans le forum Windows Forms
    Réponses: 19
    Dernier message: 19/03/2008, 13h43
  3. [Qt4]Les slots et signaux
    Par Michaël dans le forum Qt
    Réponses: 5
    Dernier message: 03/08/2007, 04h55
  4. Réponses: 3
    Dernier message: 22/04/2007, 14h12
  5. [W3C] Lien menu déroulant ne s'ouvre pas dans une nouvelle fenetre
    Par Kenshin86 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 3
    Dernier message: 20/03/2007, 16h43

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