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 :

Migration de PySide à PyQt 5


Sujet :

PyQt Python

  1. #1
    Membre averti
    Inscrit en
    Février 2006
    Messages
    707
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 707
    Points : 366
    Points
    366
    Par défaut Migration de PySide à PyQt 5
    Bonjour,

    Comme pyside est mort depuis fin janvier 2015, j'essaie de migrer mon code de pyside vers pyqt5


    Malheureusement, le code n'affiche rien.

    Voici le code :


    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
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
     
    #!/usr/bin/env python
    # -*- coding: latin-1 -*-
    # Auteur Battant
     
    # ce code pourrait faire partie d'un logiciel libre GPL payant open source chaque personne pourrait ou non ce faire pyer pour le travail sur son code.
    # Ce code serait distribuer en open source dans l'espoir qu'il serait amélioré et maintenu par une communauté motivée et afin que le programme
    # qui en résulte ne meure si possible jamais.
     
    from PyQt5 import QtCore
    import logging, logging.handlers
    #from PyQt5.QtGui import *
    from PyQt5.QtWidgets import *
     
    import sys
     
     
    class MainMenu (QWidget) :
     
     
        verbose = False
     
        def __init__(self, parent=None) :
            QtGui.QWidget.__init__(self, parent)
            self.clients = QPushButton('Clients',self)
            self.prestations = QPushButton ('Prestations',self)
            self.factures = QPushButton ('Facture',self)
            self.agenda = QPushButton ('agenda',self)
            self.Quitter = QPushButton('Quitter',self)
            self.configEvent()
            self.setWindowTitle('Menu principal')
            self.menuLayout = QHBoxLayout()
            self.menuLayout.addWidget(clients)
            self.menuLayout.addWidget(prestations)
            self.menuLayout.addWidget(factures)
            self.menuLayout.addWidget(agenda)
            self.menuLayout.addWidget(agenda)
            self.setLayout(menuLayout)    
            #quitLayout = QHBoxLayout()
            #quitLayout.addWidget(Quitter)
     
            menuLayout.addWidget(Quitter)
     
        def configEvent(self) :
           # code de  VinsS de developpez.com
            self.Quitter.clicked.connect(quit)
     
     
     
        def prepareLogFile(cls) :
            lvl = logging.DEBUG
            logfile = "billManagerOutput.log"
            logging.basicConfig(filename=logfile, filemode='a', format=form ,level=lvl)
            file_handler = logging.handlers.RotatingFileHandler(logfile, backupCount=7,
                                                            encoding='utf-8')
            file_handler.setFormatter(logging.Formatter(form))
            logger.addHandler(file_handler)
     
     
    if __name__=='__main_ ':
            app = QtGui.QApplication(sys.argv)
            if '-v' in sys.argv :
                verbose = True
            MainMenu.prepareLogFile()
            if verbose :
                logging.debug ('session principale')
                logging.debug ('construction mainmenu')
                window = MainMenu()
            window.show()
            if verbose :
                logging.debug ('mainmenu construit')
     
            sys.exit(app.exec_())

    Pourriez-vous m'aider ?

    Merci d'avance

    Salutations
    Battant

  2. #2
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 287
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 287
    Points : 36 776
    Points
    36 776
    Par défaut
    Salut,

    Citation Envoyé par Battant Voir le message
    Comme pyside est mort depuis fin janvier 2015, j'essaie de migrer mon code de pyside vers pyqt5
    Si votre code fonctionnait sous PySide, il serait préférable de migrer vers Qt4/PyQt4 puis vers Qt5.

    Pour le reste, ajoutez un print après "if __name__==..." et demandez vous pourquoi il n'affiche rien.
    note: normalement, ici, seuls les "import" devraient être mis à jour.

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  3. #3
    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,

    Pourquoi l'instanciation de la fenêtre est-elle conditionnée à verbose ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
            if verbose :
                logging.debug ('session principale')
                logging.debug ('construction mainmenu')
                window = MainMenu()
    donc si verbose est False, tu devrais avoir une erreur à la ligne qui suit:
    ... mais cette erreur ne se produit pas parce que __name__ != '__main_'

Discussions similaires

  1. Créations de nouveaux modèles pour PySide/PyQt
    Par o.girardot dans le forum Qt
    Réponses: 0
    Dernier message: 04/09/2010, 16h42

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