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 :

QMenuBar dans Qt Creator [QtGui]


Sujet :

PyQt Python

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Février 2011
    Messages
    297
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2011
    Messages : 297
    Par défaut QMenuBar dans Qt Creator
    Bonjour
    j'ai un men Bar sous Qt creator , j'ai créer avec un un menu Fermer si je clique au dessus j'ai un sous menu quitter mon but c'est de fermer la fenêtre en cliquant sur "quitter"
    mais j'ai un problème , j'arrive pas préciser le signal et slot du menu bar
    voir fichier attaché
    merci d'avance
    Images attachées Images attachées  

  2. #2
    Expert confirmé

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

    Informations forums :
    Inscription : Octobre 2008
    Messages : 4 307
    Par défaut
    Salut, je suppose que "Quitter" est une QAction

    Tu la connectes comme ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    self.actionQuitter.triggered.connect(self.close_event)
    Ensuite ta fonction close_event:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
        def close_event(self, e):
            """Quiet exit.
     
            """
            # Avoid segfault
            QtCore.QCoreApplication.processEvents()
            sys.exit()
    Cette même fonction peut servir pour intercepter la demande fermeture au moyen de la petite croix de la barre de titre, qui souvent retourne une segfault.
    Pour ça il suffit d'ajouter dans le code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    MainWindow.closeEvent = self.close_event

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Février 2011
    Messages
    297
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2011
    Messages : 297
    Par défaut
    au fait quand je fais :self.actionQuitter.clicked.connect(self.close())

    j'ai cette erreur :
    TypeError: 'sip.methoddescriptor' object is not callable

  4. #4
    Membre éclairé
    Profil pro
    Inscrit en
    Février 2011
    Messages
    297
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2011
    Messages : 297
    Par défaut
    j'ai testé ce que tu m'as dit mais il me supprime tout le menu bar des que je lance la compilation avant même que je clique

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Février 2011
    Messages
    297
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2011
    Messages : 297
    Par défaut
    ca marche super bien
    j'a appliqué ton code et ca fonctionne
    au debut ca marchait pas parce que j'avais déclaré ta fonction close_event
    avant la fonction retranslateUi
    excusez mon ignorance mais je suis débutante en python
    merci encore

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

Discussions similaires

  1. Réponses: 3
    Dernier message: 01/04/2009, 19h34
  2. Bug trouvé dans qt-creator
    Par alpha_one_x86 dans le forum Qt
    Réponses: 14
    Dernier message: 29/12/2008, 12h58

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