Как сделать переход между страницами в одном окне?
Пытаюсь реализовать игру. Изначально мы попадаем в меню
Дальше идёт развилка. Либо сразу начать игру или же настроить игру.
У меня идёт проблема с реализацией перехода между страницами. Начальную страницу и станицу настроек сделал в Qt Designer.
Я уже пробовал найти что-то в интернете, но безуспешно.
Прошу помощи. Заранее спасибо!
main.py
import sys
import PyQt5
from PyQt5 import QtCore, QtGui, QtWidgets
from PyQt5.QtGui import QIcon
import IntroPage
import SettingsPage
class Intro(QtWidgets.QMainWindow):
def __init__(self):
super(Intro,self).__init__()
self.IntroPage = IntroPage.Ui_MainWindow()
self.IntroPage.setupUi(self)
app = QtWidgets.QApplication([])
application = Intro()
application.show()
sys.exit(app.exec())`
IntroPage.py (Код сделан в Qt Designer.)
# -*- coding: utf-8 -*-
import sys
import PyQt5
from PyQt5 import QtCore, QtGui, QtWidgets
from PyQt5.QtGui import QIcon
import SettingsPage
class Ui_MainWindow(object):
def setupUi(self, MainWindow):
MainWindow.setObjectName("MainWindow")
MainWindow.resize(1280, 720)
icon = QtGui.QIcon()
icon.addPixmap(QtGui.QPixmap("../../Downloads/Safe.png"), QtGui.QIcon.Normal,
QtGui.QIcon.Off)
MainWindow.setWindowIcon(icon)
self.centralwidget = QtWidgets.QWidget(MainWindow)
self.centralwidget.setObjectName("centralwidget")
self.label = QtWidgets.QLabel(self.centralwidget)
self.label.setGeometry(QtCore.QRect(0, 0, 1280, 720))
font = QtGui.QFont()
font.setPointSize(24)
self.label.setFont(font)
self.label.setText("")
self.label.setPixmap(QtGui.QPixmap("../../Downloads/TV - 1.jpg"))
self.label.setObjectName("label")
self.pushButton = QtWidgets.QPushButton(self.centralwidget)
self.pushButton.setGeometry(QtCore.QRect(490, 250, 300, 90))
font = QtGui.QFont()
font.setFamily("Comic Relief")
font.setPointSize(24)
self.pushButton.setFont(font)
self.pushButton.setStyleSheet("QPushButton {\n"
" color:#E2E6ED;\n"
" background-color:#353B47;\n"
" border:7px solid #191E1D;\n"
" border-radius:25;\n"
"}\n"
"QPushButton:pressed {\n"
" background-color:#2A2F37;\n"
"}")
self.pushButton.setObjectName("pushButton")
self.pushButton_2 = QtWidgets.QPushButton(self.centralwidget)
self.pushButton_2.setGeometry(QtCore.QRect(490, 370, 300, 90))
font = QtGui.QFont()
font.setFamily("Comic Relief")
font.setPointSize(24)
self.pushButton_2.setFont(font)
self.pushButton_2.setStyleSheet("QPushButton {\n"
" color:#E2E6ED;\n"
" background-color:#353B47;\n"
" border:7px solid #191E1D;\n"
" border-radius:25;\n"
"}\n"
"QPushButton:pressed {\n"
" background-color:#2A2F37;\n"
"}")
self.pushButton_2.setObjectName("pushButton_2")
MainWindow.setCentralWidget(self.centralwidget)
self.retranslateUi(MainWindow)
QtCore.QMetaObject.connectSlotsByName(MainWindow)
def retranslateUi(self, MainWindow):
_translate = QtCore.QCoreApplication.translate
MainWindow.setWindowTitle(_translate("MainWindow", "SafeCracker"))
self.pushButton.setText(_translate("MainWindow", "НАЧАТЬ ИГРУ"))
self.pushButton_2.setText(_translate("MainWindow", "НАСТРОЙКИ"))
if __name__ == "__main__":
app = QtWidgets.QApplication(sys.argv)
MainWindow = QtWidgets.QMainWindow()
ui = Ui_MainWindow()
ui.setupUi(MainWindow)
MainWindow.show()
sys.exit(app.exec_())
Каким способом я могу перейти к настройкам?
Источник: Stack Overflow на русском