Форум сайта python.su
Пытался создать форму в Pyqt-Designer , после нескольких доработок запускаю файл, но форма не появляется, зато в процессах запускается и висит питон. Вопрос как шаблонамми из Designer пользоваться?
from PyQt4 import QtCore, QtGui import sys try: from PyQt4.QtCore import QString try: _fromUtf8 = 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_MainWindow(QtGui.QMainWindow): def __init__(self): QtGui.QMainWindow.__init__(self) self.setupUi(self) def setupUi(self, MainWindow): MainWindow.setObjectName(_fromUtf8("MainWindow")) MainWindow.resize(412, 495) self.centralwidget = QtGui.QWidget(MainWindow) self.centralwidget.setObjectName(_fromUtf8("centralwidget")) self.horizontalLayout = QtGui.QHBoxLayout(self.centralwidget) self.horizontalLayout.setObjectName(_fromUtf8("horizontalLayout")) self.groupBox = QtGui.QGroupBox(self.centralwidget) self.groupBox.setObjectName(_fromUtf8("groupBox")) self.pushButton_12 = QtGui.QPushButton(self.groupBox) self.pushButton_12.setGeometry(QtCore.QRect(200, 230, 75, 61)) font = QtGui.QFont() font.setPointSize(20) self.pushButton_12.setFont(font) self.pushButton_12.setObjectName(_fromUtf8("pushButton_12")) self.pushButton_11 = QtGui.QPushButton(self.groupBox) self.pushButton_11.setGeometry(QtCore.QRect(110, 230, 75, 61)) font = QtGui.QFont() font.setPointSize(20) self.pushButton_11.setFont(font) self.pushButton_11.setObjectName(_fromUtf8("pushButton_11")) self.pushButton_5 = QtGui.QPushButton(self.groupBox) self.pushButton_5.setGeometry(QtCore.QRect(290, 160, 75, 61)) font = QtGui.QFont() font.setPointSize(20) self.pushButton_5.setFont(font) self.pushButton_5.setObjectName(_fromUtf8("pushButton_5")) self.pushButton_16 = QtGui.QPushButton(self.groupBox) self.pushButton_16.setGeometry(QtCore.QRect(290, 230, 75, 61)) font = QtGui.QFont() font.setPointSize(20) self.pushButton_16.setFont(font) self.pushButton_16.setObjectName(_fromUtf8("pushButton_16")) self.pushButton_15 = QtGui.QPushButton(self.groupBox) self.pushButton_15.setGeometry(QtCore.QRect(290, 300, 75, 61)) font = QtGui.QFont() font.setPointSize(20) self.pushButton_15.setFont(font) self.pushButton_15.setObjectName(_fromUtf8("pushButton_15")) self.pushButton_4 = QtGui.QPushButton(self.groupBox) self.pushButton_4.setGeometry(QtCore.QRect(290, 90, 75, 61)) self.pushButton_4.setObjectName(_fromUtf8("pushButton_4")) self.pushButton_6 = QtGui.QPushButton(self.groupBox) self.pushButton_6.setGeometry(QtCore.QRect(110, 160, 75, 61)) font = QtGui.QFont() font.setPointSize(20) self.pushButton_6.setFont(font) self.pushButton_6.setObjectName(_fromUtf8("pushButton_6")) self.pushButton_3 = QtGui.QPushButton(self.groupBox) self.pushButton_3.setGeometry(QtCore.QRect(200, 90, 75, 61)) self.pushButton_3.setObjectName(_fromUtf8("pushButton_3")) self.pushButton_9 = QtGui.QPushButton(self.groupBox) self.pushButton_9.setGeometry(QtCore.QRect(20, 300, 75, 61)) font = QtGui.QFont() font.setPointSize(20) self.pushButton_9.setFont(font) self.pushButton_9.setObjectName(_fromUtf8("pushButton_9")) self.pushButton_20 = QtGui.QPushButton(self.groupBox) self.pushButton_20.setGeometry(QtCore.QRect(110, 370, 75, 61)) font = QtGui.QFont() font.setPointSize(20) self.pushButton_20.setFont(font) self.pushButton_20.setObjectName(_fromUtf8("pushButton_20")) self.pushButton_14 = QtGui.QPushButton(self.groupBox) self.pushButton_14.setGeometry(QtCore.QRect(20, 230, 75, 61)) font = QtGui.QFont() font.setPointSize(20) self.pushButton_14.setFont(font) self.pushButton_14.setObjectName(_fromUtf8("pushButton_14")) self.pushButton_8 = QtGui.QPushButton(self.groupBox) self.pushButton_8.setGeometry(QtCore.QRect(20, 160, 75, 61)) font = QtGui.QFont() font.setPointSize(20) self.pushButton_8.setFont(font) self.pushButton_8.setObjectName(_fromUtf8("pushButton_8")) self.pushButton_13 = QtGui.QPushButton(self.groupBox) self.pushButton_13.setGeometry(QtCore.QRect(110, 300, 75, 61)) font = QtGui.QFont() font.setPointSize(20) self.pushButton_13.setFont(font) self.pushButton_13.setObjectName(_fromUtf8("pushButton_13")) self.pushButton_7 = QtGui.QPushButton(self.groupBox) self.pushButton_7.setGeometry(QtCore.QRect(200, 160, 75, 61)) font = QtGui.QFont() font.setPointSize(20) self.pushButton_7.setFont(font) self.pushButton_7.setObjectName(_fromUtf8("pushButton_7")) self.pushButton_2 = QtGui.QPushButton(self.groupBox) self.pushButton_2.setGeometry(QtCore.QRect(110, 90, 75, 61)) font = QtGui.QFont() font.setPointSize(20) self.pushButton_2.setFont(font) self.pushButton_2.setObjectName(_fromUtf8("pushButton_2")) self.pushButton_18 = QtGui.QPushButton(self.groupBox) self.pushButton_18.setGeometry(QtCore.QRect(20, 370, 75, 61)) font = QtGui.QFont() font.setPointSize(20) self.pushButton_18.setFont(font) self.pushButton_18.setObjectName(_fromUtf8("pushButton_18")) self.pushButton_17 = QtGui.QPushButton(self.groupBox) self.pushButton_17.setGeometry(QtCore.QRect(290, 370, 75, 61)) font = QtGui.QFont() font.setPointSize(20) self.pushButton_17.setFont(font) self.pushButton_17.setObjectName(_fromUtf8("pushButton_17")) self.pushButton_10 = QtGui.QPushButton(self.groupBox) self.pushButton_10.setGeometry(QtCore.QRect(200, 300, 75, 61)) font = QtGui.QFont() font.setPointSize(20) self.pushButton_10.setFont(font) self.pushButton_10.setObjectName(_fromUtf8("pushButton_10")) self.pushButton = QtGui.QPushButton(self.groupBox) self.pushButton.setGeometry(QtCore.QRect(20, 90, 75, 61)) font = QtGui.QFont() font.setPointSize(20) self.pushButton.setFont(font) self.pushButton.setObjectName(_fromUtf8("pushButton")) self.pushButton_19 = QtGui.QPushButton(self.groupBox) self.pushButton_19.setGeometry(QtCore.QRect(200, 370, 75, 61)) font = QtGui.QFont() font.setPointSize(20) self.pushButton_19.setFont(font) self.pushButton_19.setObjectName(_fromUtf8("pushButton_19")) self.label = QtGui.QLabel(self.groupBox) self.label.setGeometry(QtCore.QRect(50, 10, 311, 61)) font = QtGui.QFont() font.setPointSize(20) self.label.setFont(font) self.label.setLayoutDirection(QtCore.Qt.RightToLeft) self.label.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter) self.label.setObjectName(_fromUtf8("label")) self.horizontalLayout.addWidget(self.groupBox) MainWindow.setCentralWidget(self.centralwidget) self.menubar = QtGui.QMenuBar(MainWindow) self.menubar.setGeometry(QtCore.QRect(0, 0, 412, 21)) self.menubar.setObjectName(_fromUtf8("menubar")) MainWindow.setMenuBar(self.menubar) self.statusbar = QtGui.QStatusBar(MainWindow) self.statusbar.setObjectName(_fromUtf8("statusbar")) MainWindow.setStatusBar(self.statusbar) self.retranslateUi(MainWindow) QtCore.QMetaObject.connectSlotsByName(MainWindow) def retranslateUi(self, MainWindow): MainWindow.setWindowTitle(_translate("MainWindow", "MainWindow", None)) self.groupBox.setTitle(_translate("MainWindow", "GroupBox", None)) self.pushButton_12.setText(_translate("MainWindow", "6", None)) self.pushButton_11.setText(_translate("MainWindow", "5", None)) self.pushButton_5.setText(_translate("MainWindow", "/", None)) self.pushButton_16.setText(_translate("MainWindow", "*", None)) self.pushButton_15.setText(_translate("MainWindow", "-", None)) self.pushButton_4.setText(_translate("MainWindow", "PushButton", None)) self.pushButton_6.setText(_translate("MainWindow", "8", None)) self.pushButton_3.setText(_translate("MainWindow", "PushButton", None)) self.pushButton_9.setText(_translate("MainWindow", "1", None)) self.pushButton_20.setText(_translate("MainWindow", ".", None)) self.pushButton_14.setText(_translate("MainWindow", "4", None)) self.pushButton_8.setText(_translate("MainWindow", "7", None)) self.pushButton_13.setText(_translate("MainWindow", "2", None)) self.pushButton_7.setText(_translate("MainWindow", "9", None)) self.pushButton_2.setText(_translate("MainWindow", "<=", None)) self.pushButton_18.setText(_translate("MainWindow", "0", None)) self.pushButton_17.setText(_translate("MainWindow", "+", None)) self.pushButton_10.setText(_translate("MainWindow", "3", None)) self.pushButton.setText(_translate("MainWindow", "C", None)) self.pushButton_19.setText(_translate("MainWindow", "=", None)) self.label.setText(_translate("MainWindow", "TextLabel", None)) if __name__ == '__main__': app = QtGui.QApplication(sys.argv) MyCalc = Ui_MainWindow() MyCalc.show() sys.exit(app.exec_()) except ImportError: QString = str
Офлайн
Открой файл в IDLE, запусти прямо оттуда, если форма не появляется должны какие-то ошибки быть. Ну и мой личный опыт: не компилирую формы в *.py файлы, использую *.ui напрямую. Код класса получается проще и нагляднее + если что-то по-быстрому надо поменять это сделать проще. Например:
class MainWindow(QtGui.QMainWindow): """Класс главного окна.""" def __init__(self): super(MainWindow, self).__init__() uic.loadUi('forms\\main.ui', self)
Офлайн
Спасибо. Также я нашел и другой вариант:
if __name__ == "__main__":
import sys
app = QtGui.QApplication(sys.argv)
MainWindow = QtGui.QMainWindow()
ui = Ui_MainWindow()
ui.setupUi(MainWindow)
MainWindow.show()
sys.exit(app.exec_())
Офлайн