Bonsoir,

Dans un petit programme de test, lorsque la 2eme fenêtre s'ouvre je peux sélectionner un item dans le combobox.
Comment connecter cet évènement à une action (un print par exemple).
Je joins à ma question les 3 fichiers :
Merci de votre aide.

Fic debut.py
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
import sys
from PyQt5.QtWidgets import QApplication
from main import Main
 
 
app = QApplication(sys.argv)
uMain = Main()
 
sys.exit(app.exec())
fic main.py
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
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
 
from PyQt5 import QtCore, QtGui, QtWidgets
from PyQt5.QtWidgets import QMainWindow, QAction, qApp, QApplication
from PyQt5.QtGui import QIcon
#from ImageViewerUI import Ui_MainWindow
from VisuCli import Ui_Form_visucli
import sys
import sqlite3
 
 
class Main(QMainWindow):
 
    def __init__(self, *args, **kwargs):
        super().__init__(*args, **kwargs)
 
        self.initUI()
 
    def initUI(self):
        self.setGeometry(0, 0, 500, 500)
 
        ouvrirAction = QAction('&Ouvrir Visu Artistes', self)
        ouvrirAction.setShortcut('Ctrl+O')
        ouvrirAction.setStatusTip('Ouvrir Visu Artistes')
        ouvrirAction.triggered.connect(self.on_open)
 
        fermerAction = QAction('&Fermer Visu Artistes', self)
        fermerAction.setShortcut('Ctrl+F')
        fermerAction.setStatusTip('Fermer Visu Artistes')
        fermerAction.triggered.connect(self.on_close)
 
        self.statusBar()
        # QMainWindow.menuBar()
 
        menubar = self.menuBar()
        fileMenu = menubar.addMenu('&File')
        fileMenu.addAction(ouvrirAction)
        fileMenu.addAction(fermerAction)
 
        self.setWindowTitle('PyQt5 Fenêtre principale')
#       self.show() #Affiche la fenêtre Main
        self.init_dialog()
        self.show() #Affiche la fenêtre Main (en fait la classe Main
 
 
 
    def init_dialog(self):
        self.form = QtWidgets.QDialog()
        self.ui = Ui_Form_visucli()
        self.ui.setupUi(self.form)
 
        #self.ui.LineEd_nom.setText('coucou')
        #self.ui.label_nom.setText('Nom')
        self.form.setWindowModality(QtCore.Qt.ApplicationModal)
#        self.form.finished.connect(self.on_close) #Se déclenche lorsque la fenêtre VisuCli se ferme
#        self.form.open().connect(self.Remplir_ComboBox)
        self.Remplir_ComboBox()
 
    def on_open(self):
        print ("Ouverture de VisuArtiste")
        self.form.open()
 
 
    def Remplir_ComboBox(self):
        print ("Remplissage")
        self.ui.cBox_nomArtiste.clear()
        connexion = sqlite3.connect("Z:/Cinema.db")
        curseur = connexion.cursor()  # Récupération d'un curseur
        donnee = '"Alba"'
        cmdsql = "SELECT art_nom, art_prenom  FROM Artistes"
        print(cmdsql)
        curseur.execute(cmdsql)
        result = curseur.fetchall()
        nblig = len(result)
        print(nblig)
        i = 1
        while i < nblig:
            Prenom = result[i][0]
            nom = result[i][1]
            nomPrenom = Prenom + " " +  nom
            self.ui.cBox_nomArtiste.addItem(nomPrenom)
            i = i + 1
        connexion.close()  #Déconnexion
 
    def on_close(self):
        print ("Fermeture du programme")
        quit()
 
# ----------------------------------------------------------------------------------------------------------------------
 
if __name__ == '__main__':
 
    app = QApplication(sys.argv)
    ex = Main()
    ret = app.exec_()
    sys.exit(ret)
Fic VisuCli.py
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
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
# -*- coding: utf-8 -*-
 
# Form implementation generated from reading ui file 'VisuCli.ui'
#
# Created by: PyQt5 UI code generator 5.13.0
#
# WARNING! All changes made in this file will be lost!
 
 
from PyQt5 import QtCore, QtGui, QtWidgets
 
 
class Ui_Form_visucli(object):
    def setupUi(self, Form_visucli):
        Form_visucli.setObjectName("Form_visucli")
        Form_visucli.resize(1061, 294)
        font = QtGui.QFont()
        font.setPointSize(10)
        font.setBold(True)
        font.setWeight(75)
        Form_visucli.setFont(font)
        self.cBox_nomArtiste = QtWidgets.QComboBox(Form_visucli)
        self.cBox_nomArtiste.setGeometry(QtCore.QRect(10, 50, 161, 21))
        font = QtGui.QFont()
        font.setPointSize(10)
        font.setBold(True)
        font.setWeight(75)
        self.cBox_nomArtiste.setFont(font)
        self.cBox_nomArtiste.setObjectName("cBox_nomArtiste")
        self.cBox_nomArtiste.addItem("")
        self.cBox_nomArtiste.addItem("")
        self.cBox_nomArtiste.addItem("")
        self.cBox_nomArtiste.addItem("")
        self.cBox_nomArtiste.addItem("")
        self.cBox_nomArtiste.addItem("")
        self.cBox_nomArtiste.addItem("")
        self.cBox_nomArtiste.addItem("")
        self.label_nom = QtWidgets.QLabel(Form_visucli)
        self.label_nom.setGeometry(QtCore.QRect(250, 60, 71, 16))
        font = QtGui.QFont()
        font.setPointSize(12)
        font.setBold(True)
        font.setWeight(75)
        self.label_nom.setFont(font)
        self.label_nom.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter)
        self.label_nom.setObjectName("label_nom")
        self.label_prenom = QtWidgets.QLabel(Form_visucli)
        self.label_prenom.setGeometry(QtCore.QRect(240, 90, 81, 16))
        font = QtGui.QFont()
        font.setPointSize(12)
        font.setBold(True)
        font.setWeight(75)
        self.label_prenom.setFont(font)
        self.label_prenom.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter)
        self.label_prenom.setObjectName("label_prenom")
        self.label_adresse = QtWidgets.QLabel(Form_visucli)
        self.label_adresse.setGeometry(QtCore.QRect(230, 120, 91, 21))
        font = QtGui.QFont()
        font.setPointSize(12)
        font.setBold(True)
        font.setWeight(75)
        self.label_adresse.setFont(font)
        self.label_adresse.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter)
        self.label_adresse.setObjectName("label_adresse")
        self.label_cdp = QtWidgets.QLabel(Form_visucli)
        self.label_cdp.setGeometry(QtCore.QRect(220, 150, 101, 16))
        font = QtGui.QFont()
        font.setPointSize(12)
        font.setBold(True)
        font.setWeight(75)
        self.label_cdp.setFont(font)
        self.label_cdp.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter)
        self.label_cdp.setObjectName("label_cdp")
        self.label_ville = QtWidgets.QLabel(Form_visucli)
        self.label_ville.setGeometry(QtCore.QRect(210, 180, 111, 20))
        font = QtGui.QFont()
        font.setPointSize(12)
        font.setBold(True)
        font.setWeight(75)
        self.label_ville.setFont(font)
        self.label_ville.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter)
        self.label_ville.setObjectName("label_ville")
        self.LineEd_nom = QtWidgets.QLineEdit(Form_visucli)
        self.LineEd_nom.setGeometry(QtCore.QRect(360, 60, 113, 20))
        self.LineEd_nom.setObjectName("LineEd_nom")
        self.LineEd_Prenom = QtWidgets.QLineEdit(Form_visucli)
        self.LineEd_Prenom.setGeometry(QtCore.QRect(360, 90, 113, 20))
        self.LineEd_Prenom.setObjectName("LineEd_Prenom")
        self.LineEd_adresse = QtWidgets.QLineEdit(Form_visucli)
        self.LineEd_adresse.setGeometry(QtCore.QRect(360, 120, 113, 20))
        self.LineEd_adresse.setObjectName("LineEd_adresse")
        self.LineEd_ville = QtWidgets.QLineEdit(Form_visucli)
        self.LineEd_ville.setGeometry(QtCore.QRect(360, 180, 113, 20))
        self.LineEd_ville.setObjectName("LineEd_ville")
        self.tableWidget = QtWidgets.QTableWidget(Form_visucli)
        self.tableWidget.setGeometry(QtCore.QRect(580, 60, 321, 141))
        self.tableWidget.setObjectName("tableWidget")
        self.tableWidget.setColumnCount(3)
        self.tableWidget.setRowCount(0)
        item = QtWidgets.QTableWidgetItem()
        self.tableWidget.setHorizontalHeaderItem(0, item)
        item = QtWidgets.QTableWidgetItem()
        self.tableWidget.setHorizontalHeaderItem(1, item)
        item = QtWidgets.QTableWidgetItem()
        self.tableWidget.setHorizontalHeaderItem(2, item)
        self.cBox_genre = QtWidgets.QComboBox(Form_visucli)
        self.cBox_genre.setGeometry(QtCore.QRect(360, 150, 111, 21))
        font = QtGui.QFont()
        font.setPointSize(10)
        font.setBold(True)
        font.setWeight(75)
        self.cBox_genre.setFont(font)
        self.cBox_genre.setObjectName("cBox_genre")
        self.cBox_genre.addItem("")
        self.cBox_genre.addItem("")
 
        self.retranslateUi(Form_visucli)
        QtCore.QMetaObject.connectSlotsByName(Form_visucli)
 
    def retranslateUi(self, Form_visucli):
        _translate = QtCore.QCoreApplication.translate
        self.cBox_nomArtiste.setItemText(0, _translate("Form_visucli", "Charlise Theron"))
        self.cBox_nomArtiste.setItemText(1, _translate("Form_visucli", "Scarlett Johansson"))
        self.cBox_nomArtiste.setItemText(2, _translate("Form_visucli", "Megan Fox"))
        self.cBox_nomArtiste.setItemText(3, _translate("Form_visucli", "Jessica Alba"))
        self.cBox_nomArtiste.setItemText(4, _translate("Form_visucli", "Michelle Pfeiffer"))
        self.cBox_nomArtiste.setItemText(5, _translate("Form_visucli", "Cameron Diaz"))
        self.cBox_nomArtiste.setItemText(6, _translate("Form_visucli", "Jean Seberg"))
        self.cBox_nomArtiste.setItemText(7, _translate("Form_visucli", "Natalie Portman"))
        self.label_nom.setText(_translate("Form_visucli", "Nom"))
        self.label_prenom.setText(_translate("Form_visucli", "Prénom"))
        self.label_adresse.setText(_translate("Form_visucli", "Age"))
        self.label_cdp.setText(_translate("Form_visucli", "Genre"))
        self.label_ville.setText(_translate("Form_visucli", "Nationalité"))
        item = self.tableWidget.horizontalHeaderItem(0)
        item.setText(_translate("Form_visucli", "Films"))
        item = self.tableWidget.horizontalHeaderItem(1)
        item.setText(_translate("Form_visucli", "Genre"))
        item = self.tableWidget.horizontalHeaderItem(2)
        item.setText(_translate("Form_visucli", "Date sortie"))
        self.cBox_genre.setCurrentText(_translate("Form_visucli", "Homme"))
        self.cBox_genre.setItemText(0, _translate("Form_visucli", "Homme"))
        self.cBox_genre.setItemText(1, _translate("Form_visucli", "Femme"))