Bonjour à tous,

Mon souci je crois est que je n'ai pas encore bien assimilé le modèle objet, j'ai mon programme en python qui marche à peu près le problème c'est que j'aimerai séparer ce qui est graphique de mes fonctions :

exemple de mon programme mal structuré :
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
class MeP_Form(QDialog):
    "Interface du plugin MeP"
    def __init__(self, iface):
 
        #Une fenetre Dialogue
        QDialog.__init__(self)
        self.iface=iface
        self.setFixedSize(800, 600)
        self.setWindowTitle("Mise en Page Automatique")
 
        bg_1=QButtonGroup()
        rb_A4 = QRadioButton("A4")
        cb_orientation= QComboBox()
        cb_orientation.addItem("Paysage")
        ...
 
        def lbl_Redimension(strPortrait):
 
            if strPortrait == "Portrait":
                label_ApercuImage.setFixedSize(315, 445)
            else:
                label_ApercuImage.setFixedSize(445, 315)
            changement_thematique(cb_thematique.currentText())
            pb_Validemodele.setText(str(function.crado))
            resume_Info()
       ...
Pour l'instant j'arrive à avoir deux modules avec une classe chacun, le problème c'est que je n'arrive pas à agir sur "cb_orientation" par exemple enfin tous les éléments graphiques que j'ai mis dans la classe MeP :

ma deuxieme classe :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
class MeP_Function(object):
    """Methodes simple liees a l'interface"""
    def __init__(self):
        self.attribut1 = "attribut1 ok"
    def base (self):
        return self.attribut1+"Yopiyo"
        #Ici j'aimerai appelle cb_orientation en faisant
        #MeP_Form.cb_orientation.methodx()
Une erreur survient et me signale que MeP_Form n'a pas d'attribut cb_orientation comment puis-je faire ? Ai-je oublié quelque-chose ? Qu'est-ce que je n'ai pas encore saisi ?