我怎样才能做到这一点,以便在WINDOW1中按下“继续”按钮后,我转到WINDOW2。
当您在WINDOW2 中按“返回”键时,我转到WINDOW1,当您在WINDOW2 中按“继续”键时,我转到WINDOW3。
当我在WINDOW3中按下'返回'键时,我去了WINDOW2
ОКНО1
from PyQt5 import QtCore, QtGui, QtWidgets
class Ui_Window1(object):
def setupUi(self, Window1):
Window1.setObjectName('Window1')
Window1.resize(450, 800)
Window1.setWindowTitle(' ')
icon = QtGui.QIcon()
icon.addPixmap(QtGui.QPixmap('icon.png'), QtGui.QIcon.Normal, QtGui.QIcon.Off)
Window1.setWindowIcon(icon)
Window1.setStyleSheet('background-color: #2c2c39')
self.Main1 = QtWidgets.QWidget(Window1)
self.Main1.setObjectName('Main1')
self.text_1 = QtWidgets.QLabel(self.Main1)
self.text_1.setGeometry(QtCore.QRect(0, 0, 450, 60))
font = QtGui.QFont()
font.setFamily('Montserrat')
font.setPointSize(12)
font.setBold(True)
font.setWeight(75)
self.text_1.setFont(font)
self.text_1.setStyleSheet('background-color: #edf3c8;\n'
'border:2px solid#d9c7b4;\n'
'color:#000000')
self.text_1.setScaledContents(False)
self.text_1.setAlignment(QtCore.Qt.AlignCenter)
self.text_1.setWordWrap(False)
self.text_1.setOpenExternalLinks(False)
self.text_1.setObjectName('text_1')
self.input_amount_1 = QtWidgets.QLineEdit(self.Main1)
self.input_amount_1.setGeometry(QtCore.QRect(0, 58, 450, 40))
font = QtGui.QFont()
font.setFamily('Montserrat')
font.setPointSize(12)
font.setBold(True)
font.setWeight(75)
self.input_amount_1.setFont(font)
self.input_amount_1.setStyleSheet('background-color: #edf3c8;\n'
'border:2px solid#d9c7b4;\n'
'color:#000000')
self.input_amount_1.setAlignment(QtCore.Qt.AlignCenter)
self.input_amount_1.setObjectName('input_amount_1')
self.but_1 = QtWidgets.QPushButton(self.Main1)
self.but_1.setGeometry(QtCore.QRect(0, 740, 450, 60))
font = QtGui.QFont()
font.setFamily('Montserrat')
font.setPointSize(14)
self.but_1.setFont(font)
self.but_1.setStyleSheet('QPushButton {\n'
' color: #ffffff;\n'
' background-color: #7f6a62;\n'
' border-radius: 0;\n'
'}\n'
'\n'
'')
self.but_1.setObjectName('but_1')
Window1.setCentralWidget(self.Main1)
self.retranslateUi(Window1)
QtCore.QMetaObject.connectSlotsByName(Window1)
#ПРОДОЛЖИТЬ
self.but_1.clicked.connect(self.proceed_1)
def retranslateUi(self, Window1):
_translate = QtCore.QCoreApplication.translate
self.but_1.setText(_translate('Window1', 'ПРОДОЛЖИТЬ'))
self.text_1.setText(_translate('Window1', 'ОКНО 1'))
#ПРОДОЛЖИТЬ
def proceed_1(self):
pass
if __name__ == '__main__':
import sys
app = QtWidgets.QApplication(sys.argv)
Window1 = QtWidgets.QMainWindow()
ui = Ui_Window1()
ui.setupUi(Window1)
Window1.show()
#QtCore.QTimer.singleShot(0, Window1.close)
sys.exit(app.exec_())
ОКНО2
from PyQt5 import QtCore, QtGui, QtWidgets
class Ui_Window2(object):
def setupUi(self, Window2):
Window2.setObjectName('Window2')
Window2.resize(450, 800)
Window2.setWindowTitle(' ')
icon = QtGui.QIcon()
icon.addPixmap(QtGui.QPixmap('icon.png'), QtGui.QIcon.Normal, QtGui.QIcon.Off)
Window2.setWindowIcon(icon)
Window2.setStyleSheet('background-color: #2c2c39')
self.Main2 = QtWidgets.QWidget(Window2)
self.Main2.setObjectName('Main2')
self.text_2 = QtWidgets.QLabel(self.Main2)
self.text_2.setGeometry(QtCore.QRect(0, 0, 450, 60))
font = QtGui.QFont()
font.setFamily('Montserrat')
font.setPointSize(12)
font.setBold(True)
font.setWeight(75)
self.text_2.setFont(font)
self.text_2.setStyleSheet('background-color: #edf3c8;\n'
'border:2px solid#d9c7b4;\n'
'color:#000000')
self.text_2.setScaledContents(False)
self.text_2.setAlignment(QtCore.Qt.AlignCenter)
self.text_2.setWordWrap(False)
self.text_2.setOpenExternalLinks(False)
self.text_2.setObjectName('text_2')
self.input_amount_2 = QtWidgets.QLineEdit(self.Main2)
self.input_amount_2.setGeometry(QtCore.QRect(0, 58, 450, 40))
font = QtGui.QFont()
font.setFamily('Montserrat')
font.setPointSize(12)
font.setBold(True)
font.setWeight(75)
self.input_amount_2.setFont(font)
self.input_amount_2.setStyleSheet('background-color: #edf3c8;\n'
'border:2px solid#d9c7b4;\n'
'color:#000000')
self.input_amount_2.setAlignment(QtCore.Qt.AlignCenter)
self.input_amount_2.setObjectName('input_amount_2')
self.but_2 = QtWidgets.QPushButton(self.Main2)
self.but_2.setGeometry(QtCore.QRect(0, 740, 225, 60))
font = QtGui.QFont()
font.setFamily('Montserrat')
font.setPointSize(12)
self.but_2.setFont(font)
self.but_2.setStyleSheet('QPushButton {\n'
' color: #ffffff;\n'
' background-color: #7f6a62;\n'
' border-radius: 0;\n'
'}\n'
'\n'
'')
self.but_2.setObjectName('but_2')
self.but_3 = QtWidgets.QPushButton(self.Main2)
self.but_3.setGeometry(QtCore.QRect(225, 740, 225, 60))
font = QtGui.QFont()
font.setFamily('Montserrat')
font.setPointSize(14)
self.but_3.setFont(font)
self.but_3.setStyleSheet('QPushButton {\n'
' color: #ffffff;\n'
' background-color: #7f6a62;\n'
' border-radius: 0;\n'
'}\n'
'\n'
'')
self.but_3.setObjectName('but_3')
Window2.setCentralWidget(self.Main2)
self.retranslateUi(Window2)
QtCore.QMetaObject.connectSlotsByName(Window2)
#ВЕРНУТЬСЯ
self.but_2.clicked.connect(self.return_1)
#ПРОДОЛЖИТЬ
self.but_3.clicked.connect(self.proceed_2)
def retranslateUi(self, Window2):
_translate = QtCore.QCoreApplication.translate
self.but_2.setText(_translate('Window2', 'ВЕРНУТЬСЯ'))
self.text_2.setText(_translate('Window2', 'ОКНО 2'))
self.but_3.setText(_translate('Window2', 'ПРОДОЛЖИТЬ'))
#ВЕРНУТЬСЯ
def return_1(self):
pass
#ПРОДОЛЖИТЬ
def proceed_2(self):
pass
if __name__ == '__main__':
import sys
app = QtWidgets.QApplication(sys.argv)
Window2 = QtWidgets.QMainWindow()
ui = Ui_Window2()
ui.setupUi(Window2)
Window2.show()
sys.exit(app.exec_())
ОКНО3
from PyQt5 import QtCore, QtGui, QtWidgets
class Ui_Window3(object):
def setupUi(self, Window3):
Window3.setObjectName('Window3')
Window3.resize(450, 800)
Window3.setWindowTitle(' ')
icon = QtGui.QIcon()
icon.addPixmap(QtGui.QPixmap('icon.png'), QtGui.QIcon.Normal, QtGui.QIcon.Off)
Window3.setWindowIcon(icon)
Window3.setStyleSheet('background-color: #2c2c39')
self.Main3 = QtWidgets.QWidget(Window3)
self.Main3.setObjectName('Main3')
self.text_3 = QtWidgets.QLabel(self.Main3)
self.text_3.setGeometry(QtCore.QRect(0, 0, 450, 60))
font = QtGui.QFont()
font.setFamily('Montserrat')
font.setPointSize(12)
font.setBold(True)
font.setWeight(75)
self.text_3.setFont(font)
self.text_3.setStyleSheet('background-color: #edf3c8;\n'
'border:2px solid#d9c7b4;\n'
'color:#000000')
self.text_3.setScaledContents(False)
self.text_3.setAlignment(QtCore.Qt.AlignCenter)
self.text_3.setWordWrap(False)
self.text_3.setOpenExternalLinks(False)
self.text_3.setObjectName('text_3')
self.input_amount_3 = QtWidgets.QLineEdit(self.Main3)
self.input_amount_3.setGeometry(QtCore.QRect(0, 58, 450, 40))
font = QtGui.QFont()
font.setFamily('Montserrat')
font.setPointSize(14)
font.setBold(True)
font.setWeight(75)
self.input_amount_3.setFont(font)
self.input_amount_3.setStyleSheet('background-color: #edf3c8;\n'
'border:2px solid#d9c7b4;\n'
'color:#000000')
self.input_amount_3.setAlignment(QtCore.Qt.AlignCenter)
self.input_amount_3.setObjectName('input_amount_3')
self.but_4 = QtWidgets.QPushButton(self.Main3)
self.but_4.setGeometry(QtCore.QRect(0, 740, 450, 60))
font = QtGui.QFont()
font.setFamily('Montserrat')
font.setPointSize(14)
self.but_4.setFont(font)
self.but_4.setStyleSheet('QPushButton {\n'
' color: #ffffff;\n'
' background-color: #7f6a62;\n'
' border-radius: 0;\n'
'}\n'
'\n'
'')
self.but_4.setObjectName('but_4')
Window3.setCentralWidget(self.Main3)
self.retranslateUi(Window3)
QtCore.QMetaObject.connectSlotsByName(Window3)
#ВЕРНУТЬСЯ
self.but_4.clicked.connect(self.return_2)
def retranslateUi(self, Window3):
_translate = QtCore.QCoreApplication.translate
self.but_4.setText(_translate('Window3', 'ВЕРНУТЬСЯ'))
self.text_3.setText(_translate('Window3', 'ОКНО 3'))
#ВЕРНУТЬСЯ
def return_2(self):
pass
if __name__ == '__main__':
import sys
app = QtWidgets.QApplication(sys.argv)
Window3 = QtWidgets.QMainWindow()
ui = Ui_Window3()
ui.setupUi(Window3)
Window3.show()
sys.exit(app.exec_())
永远不要更改 Qt Designer 生成的代码,EVER。
创建另一个从相应小部件继承的类,并使用生成的类来填充它。