كيفية تشغيل البرنامج الذي تم إنشاؤه بواسطة Pyuic4؟

StackOverflow https://stackoverflow.com/questions/1880039

  •  18-09-2019
  •  | 
  •  

سؤال

أنا جديد على pyqt على الرغم من أنني أعرف ثعبان قليلا .. أردت مصمم كيو تي برمجة واجهة المستخدم الرسومية لأنها ستجعل عملي أسهل. لقد اتخذت حوار بسيط في مصمم 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. سيولد رمز Addional لجعل البرنامج النصي قابل للتنفيذ.


في التطبيق الحقيقي، يجب أن تكتب بشكل أفضل فئة فرعية من 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_())

ثم قم بتشغيل هذا البرنامج النصي الأخير لإطلاق البرنامج.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top