Bonsoir à tous,

L'idée de mon interface (py2.7 + PyQT4) est d'offrir la possibilité à l'utilisateur de sélectionner un item par le menu ou les radiobuttons sur la fenêtre.
J'ai réussi à se qu'ils soient groupés et exclusifs mais je souhaiterais avoir une piste pour que un item checker dans le menu, le soit aussi dans mes radoubons et inversement bien sûr. J'ai fait une base de travail que vous pouvez également commenter

Merci d'avance pour toutes les pistes. Je sais jouer avec les signaux enfin c'est beaucoup dire puisque je vous pose un problème de connexion

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
import sys
from PyQt4 import QtGui, QtCore
 
class MaFenetre(QtGui.QMainWindow):
    def __init__(self):
        super(MaFenetre, self).__init__()
        self.signalList=['Continuous','Ramp','Sine','Square','Triangular','Sawtooth']        
        self.initUI()
        self.show()
 
    def initUI(self):
        #un menu bar
        self.createMenuBar()
        # corps de la fenetre        
        self.mainFrame()
 
    def createMenuBar(self):
        #definition du menu
        self.monMenuBar=self.menuBar()
        # Menu Signal
        self.signal = QtGui.QMenu('Signal',self.monMenuBar)  
        self.allSignal = QtGui.QActionGroup(self.monMenuBar,exclusive=True)
        for eachSignal in self.signalList:
            if eachSignal == 'Sine':
                itemSignal=self.allSignal.addAction(QtGui.QAction(str(eachSignal),self.signal,checkable=True,checked=True))
            else:
                itemSignal=self.allSignal.addAction(QtGui.QAction(str(eachSignal),self.signal,checkable=True))
            self.signal.addAction(itemSignal)
        self.monMenuBar.addMenu(self.signal)
 
    def mainFrame(self):
        self.main_frame = QtGui.QWidget()
        self.listeVlayout=QtGui.QVBoxLayout()
        number_group=QtGui.QButtonGroup(self.main_frame)
        for eachSignal in self.signalList:      
            self.bouttonListe=QtGui.QRadioButton(eachSignal)
            number_group.addButton(self.bouttonListe)
            if eachSignal == 'Sine':
                self.bouttonListe.setChecked(True)
            self.listeVlayout.addWidget(self.bouttonListe)
 
        self.main_frame.setLayout(self.listeVlayout)
        self.setCentralWidget(self.main_frame)
        self.main_frame.updateGeometry()
 
if __name__=='__main__':
    app=QtGui.QApplication(sys.argv)
    fenetre=MaFenetre()
    sys.exit(app.exec_())