from PyQt5.QtWidgets import QApplication, QWidget
import sys
from PyQt5 import QtCore, QtGui, QtWidgets
class Ui_Form(object):
def setupUi(self, Form): # Form 设置这些控件需要在什么上显示,方便组合
Form.setObjectName("Form")
Form.resize(335, 100)
self.label = QtWidgets.QLabel(Form)
self.label.setGeometry(QtCore.QRect(60, 40, 54, 12))
self.label.setObjectName("label")
self.lineEdit = QtWidgets.QLineEdit(Form)
self.lineEdit.setGeometry(QtCore.QRect(170, 40, 113, 20))
self.lineEdit.setObjectName("lineEdit")
self.retranslateUi(Form)
QtCore.QMetaObject.connectSlotsByName(Form)
def retranslateUi(self, Form):
_translate = QtCore.QCoreApplication.translate
Form.setWindowTitle(_translate("Form", "Form"))
self.label.setText(_translate("Form", "输入"))
class Window(QWidget, Ui_Form):
def __init__(self, parent=None):
super().__init__(parent)
self.setupUi(self) # self 传入 QWidget 控件对象,让 Ui_Form 中的对象在上面显示
app = QApplication(sys.argv)
window = Window()
window.show()
sys.exit(app.exec_())
from PyQt5.QtWidgets import QApplication, QWidget
import sys
from PyQt5 import QtCore, QtGui, QtWidgets
class Ui_Form(object):
def setupUi(self, Form):
Form.setObjectName("Form")
Form.resize(335, 100)
self.label = QtWidgets.QLabel(Form)
self.label.setGeometry(QtCore.QRect(60, 40, 54, 12))
self.label.setObjectName("label")
self.lineEdit = QtWidgets.QLineEdit(Form)
self.lineEdit.setGeometry(QtCore.QRect(170, 40, 113, 20))
self.lineEdit.setObjectName("lineEdit")
self.retranslateUi(Form)
QtCore.QMetaObject.connectSlotsByName(Form)
def retranslateUi(self, Form):
_translate = QtCore.QCoreApplication.translate
Form.setWindowTitle(_translate("Form", "Form"))
self.label.setText(_translate("Form", "输入"))
class Window(QWidget):
def __init__(self, parent=None):
super().__init__(parent)
self.ui = Ui_Form()
self.ui.setupUi(self)
app = QApplication(sys.argv)
window = Window()
window.show()
sys.exit(app.exec_())
from PyQt5.QtWidgets import QApplication, QWidget
import sys
from PyQt5 import QtCore, QtGui, QtWidgets
from PyQt5.uic import loadUi
class Window(QWidget):
def __init__(self, parent=None):
super().__init__(parent)
loadUi('testWin.ui', self)
app = QApplication(sys.argv)
window = Window()
window.show()
sys.exit(app.exec_())
testWin.ui
<ui version="4.0">
<class>Formclass>
<widget class="QWidget" name="Form">
<property name="geometry">
<rect>
<x>0x>
<y>0y>
<width>335width>
<height>100height>
rect>
property>
<property name="windowTitle">
<string>Formstring>
property>
<widget class="QLabel" name="label">
<property name="geometry">
<rect>
<x>60x>
<y>40y>
<width>54width>
<height>12height>
rect>
property>
<property name="text">
<string>输入string>
property>
widget>
<widget class="QLineEdit" name="lineEdit">
<property name="geometry">
<rect>
<x>170x>
<y>40y>
<width>113width>
<height>20height>
rect>
property>
widget>
widget>
<resources/>
<connections/>
ui>
import sys
from PyQt5.QtWidgets import QWidget, QApplication
from PyQt5 import QtWidgets
class Case_Win(QWidget):
def __init__(self):
super().__init__(parent=None)
self.widget = Win2Qline(self)
class Win2Qline: # 普通python 类
def __init__(self, form): # 传入 form
formLayout = QtWidgets.QFormLayout(form) # 初始化传入 parent,即可指定该控件在那里显示
qlabel = QtWidgets.QLabel()
qlabel.setText("条形码")
self.barcode_id = QtWidgets.QLineEdit()
formLayout.addRow(qlabel, self.barcode_id)
qlabel = QtWidgets.QLabel()
qlabel.setText("本地通信模块")
self.local_id = QtWidgets.QLineEdit()
formLayout.addRow(qlabel, self.local_id)
self.first_edit = self.barcode_id
self.last_edit = self.local_id
if __name__ == '__main__':
app = QApplication(sys.argv)
case_win = Case_Win()
case_win.show()
sys.exit(app.exec())