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 :

Menubar et QtGui.QGraphicsView


Sujet :

PyQt Python

  1. #1
    Membre à l'essai
    Homme Profil pro
    Ingénieur Systèmes embarqués
    Inscrit en
    Juillet 2016
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 30
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Ingénieur Systèmes embarqués
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Juillet 2016
    Messages : 8
    Points : 10
    Points
    10
    Par défaut Menubar et QtGui.QGraphicsView
    Bonjour,

    je souhaiterais ouvrir une fenêtre et dessiner dedans c’est chose faite:
    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
    class MyView(QtGui.QGraphicsView):
        def __init__(self):
            QtGui.QGraphicsView.__init__(self)
            
            self.setGeometry(QtCore.QRect(100, 100, 1600, 900))
    
            self.scene = QtGui.QGraphicsScene(self)
            self.scene.setSceneRect(QtCore.QRectF())
            self.scene.setBackgroundBrush(QtCore.Qt.black)
    
            self.setScene(self.scene)
            
            for i in range(5):
                self.item = QtGui.QGraphicsEllipseItem(i*75, 10, 60, 40)
                self.scene.addItem(self.item)


    Le soucis c’est que j'aimerais depuis cette fenêtre récupérer des données d'un fichier et donc je voudrais créer un menu bar pour avoir le fameux menu déroulant fichier ouvrir. Mon bout de code qui marche parfaitement avec une QmainWindow:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
            openFile = QtGui.QAction(QtGui.QIcon('open.png'), 'Open', self)
            openFile.setShortcut('Ctrl+O')
            openFile.setStatusTip('Open new File')
            openFile.triggered.connect(self.showDialog)
    
            menubar = self.menuBar()
            fileMenu = menubar.addMenu('&File')
            fileMenu.addAction(openFile)
    Ne marche plus dans la classe Mywiew (premier code).

    Comment faire ?

    Merci d'avance pour votre aide.

  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,

    Seule une QMainWindow peut avoir une menuBar et une statusBar.

    Et aussi ton action doit appeler une fonction et pas un objet openFile comme tu as mis.

Discussions similaires

  1. [QtGUI] Gestion de QGraphicsView
    Par Invité dans le forum Débuter
    Réponses: 2
    Dernier message: 08/01/2010, 19h36
  2. [ eclipse ][ view ] [ menubars ] comment loader un icon?
    Par Jean-Philippe Shields dans le forum Eclipse Platform
    Réponses: 3
    Dernier message: 06/12/2005, 14h01
  3. toolbar menubar...
    Par ebaynaud dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 05/12/2005, 18h28
  4. [FLASH MX] menuBar
    Par totoche dans le forum Flash
    Réponses: 7
    Dernier message: 01/12/2005, 15h52
  5. Attacher une MenuBar a une CDialog
    Par toto4650 dans le forum MFC
    Réponses: 3
    Dernier message: 17/06/2005, 17h27

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