PYUIC4에서 생성 한 프로그램을 실행하는 방법은 무엇입니까?
-
18-09-2019 - |
문제
나는 Pyqt를 처음 접했지만 Python을 조금 알고 있습니다. GUI 프로그래밍을 위해 QT 디자이너가 내 작업을 더 쉽게 만들 수 있기를 원했습니다. QT 디자이너에서 간단한 대화를하고 PYUIC4를 사용하여 변환했습니다.
from PyQt4 import QtCore, QtGui
class Ui_Form1(object):
def setupUi(self, Form1):
Form1.setObjectName("Form1")
Form1.resize(495, 364)
self.listWidget = QtGui.QListWidget(Form1)
self.listWidget.setGeometry(QtCore.QRect(60, 100, 221, 111))
self.listWidget.setObjectName("listWidget")
self.lineEdit = QtGui.QLineEdit(Form1)
self.lineEdit.setGeometry(QtCore.QRect(60, 250, 221, 26))
self.lineEdit.setObjectName("lineEdit")
self.pushButton = QtGui.QPushButton(Form1)
self.pushButton.setGeometry(QtCore.QRect(350, 170, 92, 28))
self.pushButton.setAutoDefault(False)
self.pushButton.setObjectName("pushButton")
self.retranslateUi(Form1)
QtCore.QObject.connect(self.pushButton, QtCore.SIGNAL("clicked()"), self.listWidget.clear)
QtCore.QMetaObject.connectSlotsByName(Form1)
def retranslateUi(self, Form1):
Form1.setWindowTitle(QtGui.QApplication.translate("Form1", "Form1", None, QtGui.QApplication.UnicodeUTF8))
self.pushButton.setText(QtGui.QApplication.translate("Form1", "X", None, QtGui.QApplication.UnicodeUTF8))
이 프로그램을 운영하고 싶습니다. 이 파일 에서이 프로그램 에서이 프로그램을 실행하는 방법은 무엇입니까? 나는 그것이 매우 기본적인 질문이라는 것을 알고 있습니다.
해결책
당신은 통과 할 수 있습니다 -x
pyuic에 대한 매개 변수. 스크립트를 실행할 수 있도록 추가 코드를 생성합니다.
실제 응용 프로그램에서는 서브 클래스를 더 잘 작성해야합니다. QMainWindow
다음과 같이 보일 수 있습니다.
# Store this code in the file MyMainWindow.py
from PyQt4.QtGui import *
class MyMainWindow(QMainWindow):
def __init__(self, ui_layout):
QMainWindow.__init__(self)
self.ui = ui_layout
ui_layout.setupUi(self)
또한 mymainwindow.py와 같은 디렉토리에서 메인 실행 가능한 스크립트를 만듭니다.
from PyQt4.QtGui import *
from MyMainWindow import *
from Form1 import * # replace Form1 the name of your generated file
import sys
app = QApplication(sys.argv)
window = MyMainWindow(Ui_Form1())
window.show()
sys.exit(app.exec_())
그런 다음이 마지막 스크립트를 실행하여 프로그램을 시작하십시오.
제휴하지 않습니다 StackOverflow