1 pièce(s) jointe(s)
Executer un fichier _ui.py lorsque l'on a que la fenetre par Qt Designer
Bonjour ,
mon fichier crée sur Qt Designer affichant une boîte de dialogue est maintenant opérationnel, et je souhaiterai avoir un code python qui lancerait cette
boîte de dialogue , car j'ai un fichier .py qui lance la boite de dialogue , cependant aucun boutons ne marchent car je ne sais pas comment définir les actions sur python.
Merci pour votre aide, je joint le fichier XML convertit en python ici .Pièce jointe 459702
Definir les widgets/Signaux dans le .py
salut à vous ,
maintenant que j'ai établis tout les signaux, sur qtdesigner, je pense que je vais inclure mon _ui.py dans mon programme .py via la "formule " : from ****.ui import Ui_Dialog , cela dans mon fichier .py comme tyrtamos m'a recommandé, ensuite
il me restera à definir les differents widgets/signaux utilisés , non ?
je me lance au boulot , je vais m'inspirer du bout de code de Tyrtamos et je reviens vers vous :)
merci
Passage de python 2 à python 3
Re,
je suis sur une machine pas très commode qui m'oblige à utiliser maintenant python 3 si je veux utiliser PyQt5 ( car je ne l'avais pas Tyrtamos , j'etais sous PyQt4 , donc maintenant je suis sous Python 3 et Pyqt5 )
Le problème est que maintenant, dois-je modifier mon fichier _ui.py precedemment mis sur le forum ? (premier post) (car c'etait sous PyQt5 mais sous python 2 .) et passer le _ui.py sous python 3 ?
Ton code fonctionne toujours tyrtamos sous python 3 et PyQt5 ? ( car il me semble que c'est du python 2) pour résumer, si je veux utiliser PyQt5 il faut que je sois sous python 3 .
comment je dois faire ? (j'espère avoir été claire)
merci pour votre précieuse aide.
Suppression signaux qtdesigner
Bonjour , oui c'est déja fait Vinss
pourquoi je ne peux pas utiliser QtDesigner pour établir les signaux entre les boutons et ensuite les définir sur mon fichier python ( car à la main cela risque d'etre tres long vu le nombre de signaux qu'il y a )
( qui importera mon fichier ui) ?
deuxieme question :
la question est : le programme precedent de Tyrtamos est possible sur python 3 ?
definition des signaux comme indiqués par Vinss
Citation:
Envoyé par
VinsS
Tu reprend le code de Tyrtamos en changeant le QWidget contre un QDialog et tu écris tes connexions à la suite ainsi que les fonctions qui recevrons ces signaux.
dans ce genre:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
|
class Fenetre(QtWidgets.QDialog):
def __init__(self, parent=None):
super(Fenetre, self).__init__(parent)
self.ui = Ui_Dialog()
self.ui.setupUi(self)
self.ui.pushButton.clicked.connect(self.on_button_clicked)
self.ui.pushButton1.clicked.connect(self.on_button1_clicked)
etc...
def on_button_clicked(self):
print("Button clicked")
def on_button1_clicked(self):
print("Button 1 clicked")
def etc... |
Code:
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 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221
|
import sys
from PyQt5 import QtWidgets
from sal3mfinal_ui import Ui_Dialog
class Fenetre(QtWidgets.QDialog):
def __init__(self, parent=None):
super(Fenetre, self).__init__(parent)
self.ui = Ui_Dialog()
self.ui.setupUi(self)
self.ui.buttonBox.accepted.connect(Dialog.accept)
self.ui.buttonBox.rejected.connect(Dialog.reject)
self.ui.lineEdit.textEdited['QString'].connect(self.pushButton.click)
self.ui.lineEdit.textEdited['QString'].connect(self.pushButton_3.click)
self.ui.pushButton_4.clicked.connect(Dialog.accept)
self.ui.pushButton_5.clicked.connect(Dialog.reject)
self.ui.pushButton_2.clicked.connect(Dialog.accept)
self.ui.pushButton_6.clicked.connect(Dialog.reject)
self.ui.pushButton_7.clicked.connect(Dialog.accept)
self.ui.pushButton_8.clicked.connect(Dialog.reject)
self.ui.checkBox.stateChanged['int'].connect(self.checkBox.click)
self.ui.checkBox_2.stateChanged['int'].connect(self.checkBox_2.click)
self.ui.checkBox_3.stateChanged['int'].connect(self.checkBox_3.click)
self.ui.checkBox_4.stateChanged['int'].connect(self.checkBox_4.click)
self.ui.checkBox_5.stateChanged['int'].connect(self.checkBox_5.click)
self.ui.doubleSpinBox_17.valueChanged['double'].connect(self.doubleSpinBox_17.setValue)
self.ui.checkBox_6.stateChanged['int'].connect(self.checkBox_6.click)
self.ui.checkBox_7.stateChanged['int'].connect(self.checkBox_7.click)
self.ui.checkBox_9.stateChanged['int'].connect(self.checkBox_9.click)
self.ui.doubleSpinBox.valueChanged['double'].connect(self.doubleSpinBox.setValue)
self.ui.checkBox_11.stateChanged['int'].connect(self.checkBox_11.click)
self.ui.doubleSpinBox_2.valueChanged['double'].connect(self.doubleSpinBox_2.setValue)
self.ui.checkBox_8.stateChanged['int'].connect(self.checkBox_8.click)
self.ui.doubleSpinBox_3.valueChanged['double'].connect(self.doubleSpinBox_3.setValue)
self.ui.checkBox_12.stateChanged['int'].connect(self.checkBox_12.click)
self.ui.checkBox_15.stateChanged['int'].connect(self.checkBox_15.click)
self.ui.checkBox_13.stateChanged['int'].connect(self.checkBox_13.click)
self.ui.doubleSpinBox_5.valueChanged['double'].connect(self.doubleSpinBox_5.setValue)
self.ui.doubleSpinBox_6.valueChanged['double'].connect(self.doubleSpinBox_6.setValue)
self.ui.doubleSpinBox_7.valueChanged['double'].connect(self.doubleSpinBox_7.setValue)
self.ui.doubleSpinBox_8.valueChanged['double'].connect(self.doubleSpinBox_8.setValue)
self.ui.doubleSpinBox_9.valueChanged['double'].connect(self.doubleSpinBox_9.setValue)
self.ui.doubleSpinBox_10.valueChanged['double'].connect(self.doubleSpinBox_10.setValue)
self.ui.doubleSpinBox_11.valueChanged['double'].connect(self.doubleSpinBox_11.setValue)
self.ui.doubleSpinBox_12.valueChanged['double'].connect(self.doubleSpinBox_12.setValue)
self.ui.doubleSpinBox_13.valueChanged['double'].connect(self.doubleSpinBox_13.setValue)
self.ui.doubleSpinBox_14.valueChanged['double'].connect(self.doubleSpinBox_14.setValue)
self.ui.doubleSpinBox_15.valueChanged['double'].connect(self.doubleSpinBox_15.setValue)
self.ui.doubleSpinBox_16.valueChanged['double'].connect(self.doubleSpinBox_16.setValue)
self.ui.spinBox.valueChanged['int'].connect(self.spinBox.setValue)
self.ui.checkBox_14.stateChanged['int'].connect(self.checkBox_14.click)
QtCore.QMetaObject.connectSlotsByName(Dialog)
def accept (dialog)
print ("Button accepted")
def reject (dialog)
print ("Button rejected")
def pushButton.click(self)
print ("pushButton textEdited")
def pushButton_3.click(self)
print ("pushButton_3 textEdited")
def accept(dialog)
print ("pushButton_4 clicked")
def reject(dialog)
print ("pushButton_5 clicked")
def accept(dialog)
print ("pushButton_2 clicked")
def reject(dialog)
print ("pushButton_6 clicked")
def accept(dialog)
print ("pushButton_7 clicked")
def reject(dialog)
print ("pushButton_8 clicked")
def checkBox.click(self)
print ("checkBox stateChanged")
def checkBox_2.click(self)
print ("checkBox_2 stateChanged")
def checkBox_3.click(self)
print ("checkBox_3 stateChanged")
def checkBox_4.click(self)
print ("checkBox_4 stateChanged")
def checkBox_5.click(self)
print ("checkBox_5 stateChanged")
def doubleSpinBox_17.setValue(self)
print ("doubleSpinBox_17 valueChanged")
def checkBox_6.click(self)
print ("checkBox_6 stateChanged")
def checkBox_7.click(self)
print ("checkBox_7 stateChanged")
def checkBox_9.click(self)
print ("checkBox_9 stateChanged")
def doubleSpinBox.setValue(self)
print ("doubleSpinBox valueChanged")
def checkBox_11.click(self)
print ("checkBox_11 stateChanged")
def doubleSpinBox_2.setValue(self)
print ("doubleSpinBox_2 valueChanged")
def checkBox_8.click(self)
print ("checkBox_8 stateChanged")
def doubleSpinBox_3.setValue(self)
print ("doubleSpinBox_3 valueChanged")
def checkBox_12.click(self)
print ("checkBox_12 stateChanged")
def checkBox_15.click(self)
print ("checkBox_15 stateChanged")
def checkBox_13.click(self)
print ("checkBox_13 stateChanged")
def doubleSpinBox_5.setValue(self)
print ("doubleSpinBox_5 valueChanged")
def doubleSpinBox_6.setValue(self)
print ("doubleSpinBox_6 valueChanged")
def doubleSpinBox_7.setValue(self)
print ("doubleSpinBox_7 valueChanged")
def doubleSpinBox_8.setValue(self)
print ("doubleSpinBox_8 valueChanged")
def doubleSpinBox_9.setValue(self)
print ("doubleSpinBox_9 valueChanged")
def doubleSpinBox_10.setValue(self)
print ("doubleSpinBox_10 valueChanged")
def doubleSpinBox_11.setValue(self)
print ("doubleSpinBox_11 valueChanged")
def checkBox_14.click(self)
print ("checkBox_14 stateChanged")
def doubleSpinBox_12.setValue(self)
print ("doubleSpinBox_12 valueChanged")
def doubleSpinBox_13.setValue(self)
print ("doubleSpinBox_13 valueChanged")
def doubleSpinBox_14.setValue(self)
print ("doubleSpinBox_14 valueChanged")
def doubleSpinBox_15.setValue(self)
print ("doubleSpinBox_15 valueChanged")
def doubleSpinBox_16.setValue(self)
print ("doubleSpinBox_16 valueChanged")
def spinBox.setValue(self)
print ("spinBox valueChanged")
if __name__ == "__main__":
app = QtWidgets.QApplication(sys.argv)
fen = Fenetre()
fen.show()
sys.exit(app.exec_()) |
Voila , est ce que cela fonctionne ?, j'ai suivi la méthode de VinSs couplée à celle de Tyrtamos.