Bonjour
Merci pour ce tutos
Je suis nouveau sur PyQt et j'ai suivi ce tutoriel (avec les écueils exposés par cenwen)
J'ai essayé de faire ma simple application mais je butte sur la classe à étendre
Dans le tutoriel on utilise QGroupBox mais non exemple utilise une simple form et je n'arrive pas à trouver l’équivalent (j'ai essayé QForm et QFormLayout sans succès)
Voici le code hello.py converti de hello.ui par pyuic4
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 from PyQt4.QtCore import * from PyQt4.QtGui import * from hello import Ui_Form import sys class HelloWorldApplication(QForm): def __init__(self, parent=None): super(HelloWorldApplication, self).__init__(parent) self.createWidgets() def createWidgets(self): self.ui = Ui_Form() self.ui.setupUi(self) if __name__ == '__main__': app = QApplication(sys.argv) myapp = HelloWorldApplication() myapp.show() sys.exit(app.exec_())
Configuration
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 from PyQt4 import QtCore, QtGui try: _fromUtf8 = QtCore.QString.fromUtf8 except AttributeError: def _fromUtf8(s): return s try: _encoding = QtGui.QApplication.UnicodeUTF8 def _translate(context, text, disambig): return QtGui.QApplication.translate(context, text, disambig, _encoding) except AttributeError: def _translate(context, text, disambig): return QtGui.QApplication.translate(context, text, disambig) class Ui_Form(object): def setupUi(self, Form): Form.setObjectName(_fromUtf8("Form")) Form.resize(240, 126) self.pushButton = QtGui.QPushButton(Form) self.pushButton.setGeometry(QtCore.QRect(80, 70, 75, 23)) self.pushButton.setObjectName(_fromUtf8("pushButton")) self.label = QtGui.QLabel(Form) self.label.setGeometry(QtCore.QRect(90, 30, 54, 14)) self.label.setObjectName(_fromUtf8("label")) self.retranslateUi(Form) QtCore.QObject.connect(self.pushButton, QtCore.SIGNAL(_fromUtf8("clicked()")), self.label.clear) QtCore.QMetaObject.connectSlotsByName(Form) def retranslateUi(self, Form): Form.setWindowTitle(_translate("Form", "Form1", None)) self.pushButton.setText(_translate("Form", "clear", None)) self.label.setText(_translate("Form", "Hello World", None))
Python 2.7
QT Designer 4.8.5
Note: Les screenshot d’écran serait avantageusement remplacées par des fenêtres de code afin de permettre les copier/coller (oui, oui je suis faignant). A réfléchir pour un tuto en PyQt5
![]()
Partager