Не работает функционал дочерних окон в PyQt

Ребята не могу решить проблему. Не работает функционал дочернего окна. Если запустить дочернее окно, как основное окно, то тогда функционал работает.

Так же в дочернем окне не получается открыть
еще одно дочернее окно (self.ui.btn_formulas.clicked.connect(self.open_TM).

Не могу решить проблему уже давно. Буду очень признателен, если поможете.

import sys
from PyQt6 import QtGui, QtCore, QtWidgets
from PyQt6.QtGui import QIcon

#Импорт классов с других файлов
from сalculator import Ui_Calculator
from choose_theorem import Ui_Choose_theorem
from pythagorean_theorem import Ui_Pythagorean_Theorem

class Main(QtWidgets.QMainWindow):
    def __init__(self):
        super(Main, self).__init__()
        self.ui = Ui_Calculator()
        self.ui.setupUi(self)
        self.ui.btn_formulas.clicked.connect(self.openChoose)

    def openChoose(self):
        global Choose_theorem
        Choose_theorem = QtWidgets.QMainWindow()
        ui = Ui_Choose_theorem()
        ui.setupUi(Choose_theorem)
        Choose_theorem.show()

        def open_PT():
            global Pythagorean_Theorem
            Pythagorean_Theorem = QtWidgets.QMainWindow()
            ui = Ui_Pythagorean_Theorem()
            ui.setupUi(Pythagorean_Theorem)
            Pythagorean_Theorem.show()

app = QtWidgets.QApplication([])
application = Main()
application.show()
sys.exit(app.exec())

Ответы (1 шт):

Автор решения: S. Nick

НИКОГДА НЕ ИЗМЕНЯЙТЕ код, сгенерированный Qt Designer, НИКОГДА.
Создайте другой класс, который наследуется от соответствующего виджета, и используйте созданный класс для его заполнения.

main.py

import sys
from math import sqrt                                                       # +++
'''
from PyQt6 import QtGui, QtCore, QtWidgets
from PyQt6.QtGui import QIcon
'''
from PyQt5 import QtWidgets, QtCore, QtGui
from PyQt5.Qt import *

#Импорт классов с других файлов
from сalculator import Ui_Calculator
from choose_theorem import Ui_Choose_theorem
from pythagorean_theorem import Ui_Pythagorean_Theorem


# +++ vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv
class ChooseTheorem(QtWidgets.QMainWindow, Ui_Choose_theorem):
    def __init__(self, parent=None):
        super(ChooseTheorem, self).__init__(parent)
        self.setupUi(self)
        

class PythagoreanTheorem(QtWidgets.QMainWindow, Ui_Pythagorean_Theorem):
    def __init__(self, parent=None):
        super(PythagoreanTheorem, self).__init__(parent)
        self.setupUi(self)
        
        self.result.clicked.connect(self.add_functions) 

    def add_functions(self):
        cat1 = self.first_lineEdit.text()
        cat2 = self.second_lineEdit.text()
        hyp = self.third_lineEdit.text()

        if cat1 == "0":
            cat1 = sqrt(int(hyp) ** 2 - int(cat2) ** 2)
            self.result_label.setText(str(cat1))
        elif cat2 == "0":
            cat2 = sqrt(int(hyp) ** 2 - int(cat1) ** 2)
            self.result_label.setText(str(cat2))
        elif hyp == "0":
            hyp = int(cat1) ** 2 + int(cat2) ** 2
            self.result_label.setText(str(hyp))        
# +++ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^    

class Main(QtWidgets.QMainWindow, Ui_Calculator):
    def __init__(self):
        super(Main, self).__init__()

        self.setupUi(self)
        
        self.btn_formulas.clicked.connect(self.openChoose)
        
# +++ vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv        
        self.chooseTheorem = ChooseTheorem(self)                           # +++
        self.chooseTheorem.pushButton_2.clicked.connect(self.open_PT)        

        self.pythagoreanTheorem = PythagoreanTheorem()                     # +++
        
        self.add_functions()

    def add_functions(self):
        #NumPad
        self.btn_0.clicked.connect(lambda: self.write_number(self.btn_0.text()))
        self.btn_1.clicked.connect(lambda: self.write_number(self.btn_1.text()))
        self.btn_2.clicked.connect(lambda: self.write_number(self.btn_2.text()))
        self.btn_3.clicked.connect(lambda: self.write_number(self.btn_3.text()))
        self.btn_4.clicked.connect(lambda: self.write_number(self.btn_4.text()))
        self.btn_5.clicked.connect(lambda: self.write_number(self.btn_5.text()))
        self.btn_6.clicked.connect(lambda: self.write_number(self.btn_6.text()))
        self.btn_7.clicked.connect(lambda: self.write_number(self.btn_7.text()))
        self.btn_8.clicked.connect(lambda: self.write_number(self.btn_8.text()))
        self.btn_9.clicked.connect(lambda: self.write_number(self.btn_9.text()))

        #Классические знаки действия
        self.btn_multiplication.clicked.connect(lambda: self.write_number(self.btn_multiplication.text()))
        self.btn_division.clicked.connect(lambda: self.write_number(self.btn_division.text()))
        self.btn_plus.clicked.connect(lambda: self.write_number(self.btn_plus.text()))
        self.btn_minus.clicked.connect(lambda: self.write_number(self.btn_minus.text()))
        self.btn_percent.clicked.connect(lambda: self.write_number(self.btn_percent.text()))
        self.btn_point.clicked.connect(lambda: self.write_number(self.btn_point.text()))
        self.btn_erase_everything.clicked.connect(self.erase)

        #Результат
        self.btn_result.clicked.connect(self.result)

    # Функция, которая выводит нажатия на монитор
    def write_number(self, number):
        if self.label.text() == "0":
            self.label.setText(number)
        else:
            self.label.setText(self.label.text() + number)

    # Функция, которая стерает строку результата
    def erase(self):
        self.label.setText("0")

    # Функция, результат
    def result(self):
        res = eval(self.label.text())
        self.label.setText(str(res))

    def openChoose(self):
        self.chooseTheorem.show()

    def open_PT(self):
        self.pythagoreanTheorem.show()

    def closeEvent(self, event):
        self.pythagoreanTheorem.close()
        self.chooseTheorem.close()
        super().closeEvent(event)
# +++ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^    

    
if __name__ == "__main__":
    app = QtWidgets.QApplication([])
    application = Main()
    application.show()
    sys.exit(app.exec())

сalculator.py

#from PyQt6 import QtCore, QtGui, QtWidgets
from PyQt5 import QtCore, QtGui, QtWidgets

class Ui_Calculator(object):
    def setupUi(self, Calculator):
        Calculator.setObjectName("Calculator")
        Calculator.resize(333, 510)
        Calculator.setStyleSheet("background-color: rgb(76, 76, 76);")
        self.centralwidget = QtWidgets.QWidget(Calculator)
        self.centralwidget.setObjectName("centralwidget")
        self.btn_formulas = QtWidgets.QPushButton(self.centralwidget)
        self.btn_formulas.setGeometry(QtCore.QRect(10, 90, 151, 61))
        self.btn_formulas.setStyleSheet("QPushButton {\n"
"    background-color: rgb(255, 255, 255);\n"
"    font: 81 12pt \"Montserrat ExtraBold\";    \n"
"    border-radius: 5;\n"
"}\n"
"QPushButton:pressed {\n"
"    background-color: rgb(204, 204, 204);\n"
"    \n"
"    \n"
"}")
        self.btn_formulas.setObjectName("btn_formulas")
        self.label = QtWidgets.QLabel(self.centralwidget)
        self.label.setGeometry(QtCore.QRect(10, 10, 311, 71))
        self.label.setStyleSheet("font: 81 20pt \"Montserrat ExtraBold\";\n"
"color: rgb(255, 255, 255);")
        self.label.setObjectName("label")
        self.btn_erase_everything = QtWidgets.QPushButton(self.centralwidget)
        self.btn_erase_everything.setGeometry(QtCore.QRect(170, 90, 71, 61))
        self.btn_erase_everything.setStyleSheet("QPushButton {\n"
"    background-color: rgb(255, 255, 255);\n"
"    font: 81 12pt \"Montserrat ExtraBold\";    \n"
"    border-radius: 5;\n"
"}\n"
"QPushButton:pressed {\n"
"    background-color: rgb(204, 204, 204);\n"
"    \n"
"    \n"
"}")
        self.btn_erase_everything.setObjectName("btn_erase_everything")
        self.btn_erase = QtWidgets.QPushButton(self.centralwidget)
        self.btn_erase.setGeometry(QtCore.QRect(250, 90, 71, 61))
        self.btn_erase.setStyleSheet("QPushButton {\n"
"    background-color: rgb(255, 255, 255);\n"
"    font: 81 12pt \"Montserrat ExtraBold\";    \n"
"    border-radius: 5;\n"
"}\n"
"QPushButton:pressed {\n"
"    background-color: rgb(204, 204, 204);\n"
"    \n"
"    \n"
"}")
        self.btn_erase.setObjectName("btn_erase")
        self.btn_division = QtWidgets.QPushButton(self.centralwidget)
        self.btn_division.setGeometry(QtCore.QRect(250, 160, 71, 61))
        self.btn_division.setStyleSheet("QPushButton {\n"
"    background-color: rgb(0, 170, 127);\n"
"    \n"
"    font: 81 12pt \"Montserrat ExtraBold\";    \n"
"    border-radius: 5;\n"
"    color: white\n"
"}\n"
"QPushButton:pressed {\n"
"    background-color: rgb(0, 141, 103);\n"
"    \n"
"    \n"
"}")
        self.btn_division.setObjectName("btn_division")
        self.btn_1_div = QtWidgets.QPushButton(self.centralwidget)
        self.btn_1_div.setGeometry(QtCore.QRect(10, 160, 71, 61))
        self.btn_1_div.setStyleSheet("QPushButton {\n"
"    background-color: rgb(255, 255, 255);\n"
"    font: 81 12pt \"Montserrat ExtraBold\";    \n"
"    border-radius: 5;\n"
"}\n"
"QPushButton:pressed {\n"
"    background-color: rgb(204, 204, 204);\n"
"    \n"
"    \n"
"}")
        self.btn_1_div.setObjectName("btn_1_div")
        self.btn_in_squae = QtWidgets.QPushButton(self.centralwidget)
        self.btn_in_squae.setGeometry(QtCore.QRect(90, 160, 71, 61))
        self.btn_in_squae.setStyleSheet("QPushButton {\n"
"    background-color: rgb(255, 255, 255);\n"
"    font: 81 12pt \"Montserrat ExtraBold\";    \n"
"    border-radius: 5;\n"
"}\n"
"QPushButton:pressed {\n"
"    background-color: rgb(204, 204, 204);\n"
"    \n"
"    \n"
"}")
        self.btn_in_squae.setObjectName("btn_in_squae")
        self.btn_percent = QtWidgets.QPushButton(self.centralwidget)
        self.btn_percent.setGeometry(QtCore.QRect(170, 160, 71, 61))
        self.btn_percent.setStyleSheet("QPushButton {\n"
"    background-color: rgb(255, 255, 255);\n"
"    font: 81 12pt \"Montserrat ExtraBold\";    \n"
"    border-radius: 5;\n"
"}\n"
"QPushButton:pressed {\n"
"    background-color: rgb(204, 204, 204);\n"
"    \n"
"    \n"
"}")
        self.btn_percent.setObjectName("btn_percent")
        self.btn_multiplication = QtWidgets.QPushButton(self.centralwidget)
        self.btn_multiplication.setGeometry(QtCore.QRect(250, 230, 71, 61))
        self.btn_multiplication.setStyleSheet("QPushButton {\n"
"    background-color: rgb(0, 170, 127);\n"
"    \n"
"    font: 81 12pt \"Montserrat ExtraBold\";    \n"
"    border-radius: 5;\n"
"    color: white\n"
"}\n"
"QPushButton:pressed {\n"
"    background-color: rgb(0, 141, 103);\n"
"    \n"
"    \n"
"}")
        self.btn_multiplication.setObjectName("btn_multiplication")
        self.btn_7 = QtWidgets.QPushButton(self.centralwidget)
        self.btn_7.setGeometry(QtCore.QRect(10, 230, 71, 61))
        self.btn_7.setStyleSheet("QPushButton {\n"
"    background-color: rgb(255, 255, 255);\n"
"    font: 81 12pt \"Montserrat ExtraBold\";    \n"
"    border-radius: 5;\n"
"}\n"
"QPushButton:pressed {\n"
"    background-color: rgb(204, 204, 204);\n"
"    \n"
"    \n"
"}")
        self.btn_7.setObjectName("btn_7")
        self.btn_8 = QtWidgets.QPushButton(self.centralwidget)
        self.btn_8.setGeometry(QtCore.QRect(90, 230, 71, 61))
        self.btn_8.setStyleSheet("QPushButton {\n"
"    background-color: rgb(255, 255, 255);\n"
"    font: 81 12pt \"Montserrat ExtraBold\";    \n"
"    border-radius: 5;\n"
"}\n"
"QPushButton:pressed {\n"
"    background-color: rgb(204, 204, 204);\n"
"    \n"
"    \n"
"}")
        self.btn_8.setObjectName("btn_8")
        self.btn_9 = QtWidgets.QPushButton(self.centralwidget)
        self.btn_9.setGeometry(QtCore.QRect(170, 230, 71, 61))
        self.btn_9.setStyleSheet("QPushButton {\n"
"    background-color: rgb(255, 255, 255);\n"
"    font: 81 12pt \"Montserrat ExtraBold\";    \n"
"    border-radius: 5;\n"
"}\n"
"QPushButton:pressed {\n"
"    background-color: rgb(204, 204, 204);\n"
"    \n"
"    \n"
"}")
        self.btn_9.setObjectName("btn_9")
        self.btn_minus = QtWidgets.QPushButton(self.centralwidget)
        self.btn_minus.setGeometry(QtCore.QRect(250, 300, 71, 61))
        self.btn_minus.setStyleSheet("QPushButton {\n"
"    background-color: rgb(0, 170, 127);\n"
"    \n"
"    font: 81 12pt \"Montserrat ExtraBold\";    \n"
"    border-radius: 5;\n"
"    color: white\n"
"}\n"
"QPushButton:pressed {\n"
"    background-color: rgb(0, 141, 103);\n"
"    \n"
"    \n"
"}")
        self.btn_minus.setObjectName("btn_minus")
        self.btn_4 = QtWidgets.QPushButton(self.centralwidget)
        self.btn_4.setGeometry(QtCore.QRect(10, 300, 71, 61))
        self.btn_4.setStyleSheet("QPushButton {\n"
"    background-color: rgb(255, 255, 255);\n"
"    font: 81 12pt \"Montserrat ExtraBold\";    \n"
"    border-radius: 5;\n"
"}\n"
"QPushButton:pressed {\n"
"    background-color: rgb(204, 204, 204);\n"
"    \n"
"    \n"
"}")
        self.btn_4.setObjectName("btn_4")
        self.btn_5 = QtWidgets.QPushButton(self.centralwidget)
        self.btn_5.setGeometry(QtCore.QRect(90, 300, 71, 61))
        self.btn_5.setStyleSheet("QPushButton {\n"
"    background-color: rgb(255, 255, 255);\n"
"    font: 81 12pt \"Montserrat ExtraBold\";    \n"
"    border-radius: 5;\n"
"}\n"
"QPushButton:pressed {\n"
"    background-color: rgb(204, 204, 204);\n"
"    \n"
"    \n"
"}")
        self.btn_5.setObjectName("btn_5")
        self.btn_6 = QtWidgets.QPushButton(self.centralwidget)
        self.btn_6.setGeometry(QtCore.QRect(170, 300, 71, 61))
        self.btn_6.setStyleSheet("QPushButton {\n"
"    background-color: rgb(255, 255, 255);\n"
"    font: 81 12pt \"Montserrat ExtraBold\";    \n"
"    border-radius: 5;\n"
"}\n"
"QPushButton:pressed {\n"
"    background-color: rgb(204, 204, 204);\n"
"    \n"
"    \n"
"}")
        self.btn_6.setObjectName("btn_6")
        self.btn_2 = QtWidgets.QPushButton(self.centralwidget)
        self.btn_2.setGeometry(QtCore.QRect(90, 370, 71, 61))
        self.btn_2.setStyleSheet("QPushButton {\n"
"    background-color: rgb(255, 255, 255);\n"
"    font: 81 12pt \"Montserrat ExtraBold\";    \n"
"    border-radius: 5;\n"
"}\n"
"QPushButton:pressed {\n"
"    background-color: rgb(204, 204, 204);\n"
"    \n"
"    \n"
"}")
        self.btn_2.setObjectName("btn_2")
        self.btn_plus = QtWidgets.QPushButton(self.centralwidget)
        self.btn_plus.setGeometry(QtCore.QRect(250, 370, 71, 61))
        self.btn_plus.setStyleSheet("QPushButton {\n"
"    background-color: rgb(0, 170, 127);\n"
"    \n"
"    font: 81 12pt \"Montserrat ExtraBold\";    \n"
"    border-radius: 5;\n"
"    color: white\n"
"}\n"
"QPushButton:pressed {\n"
"    background-color: rgb(0, 141, 103);\n"
"    \n"
"    \n"
"}")
        self.btn_plus.setObjectName("btn_plus")
        self.btn_3 = QtWidgets.QPushButton(self.centralwidget)
        self.btn_3.setGeometry(QtCore.QRect(170, 370, 71, 61))
        self.btn_3.setStyleSheet("QPushButton {\n"
"    background-color: rgb(255, 255, 255);\n"
"    font: 81 12pt \"Montserrat ExtraBold\";    \n"
"    border-radius: 5;\n"
"}\n"
"QPushButton:pressed {\n"
"    background-color: rgb(204, 204, 204);\n"
"    \n"
"    \n"
"}")
        self.btn_3.setObjectName("btn_3")
        self.btn_1 = QtWidgets.QPushButton(self.centralwidget)
        self.btn_1.setGeometry(QtCore.QRect(10, 370, 71, 61))
        self.btn_1.setStyleSheet("QPushButton {\n"
"    background-color: rgb(255, 255, 255);\n"
"    font: 81 12pt \"Montserrat ExtraBold\";    \n"
"    border-radius: 5;\n"
"}\n"
"QPushButton:pressed {\n"
"    background-color: rgb(204, 204, 204);\n"
"    \n"
"    \n"
"}")
        self.btn_1.setObjectName("btn_1")
        self.btn_0 = QtWidgets.QPushButton(self.centralwidget)
        self.btn_0.setGeometry(QtCore.QRect(10, 440, 151, 61))
        self.btn_0.setStyleSheet("QPushButton {\n"
"    background-color: rgb(255, 255, 255);\n"
"    font: 81 12pt \"Montserrat ExtraBold\";    \n"
"    border-radius: 5;\n"
"}\n"
"QPushButton:pressed {\n"
"    background-color: rgb(204, 204, 204);\n"
"    \n"
"    \n"
"}")
        self.btn_0.setObjectName("btn_0")
        self.btn_point = QtWidgets.QPushButton(self.centralwidget)
        self.btn_point.setGeometry(QtCore.QRect(170, 440, 71, 61))
        self.btn_point.setStyleSheet("QPushButton {\n"
"    background-color: rgb(255, 255, 255);\n"
"    font: 81 12pt \"Montserrat ExtraBold\";    \n"
"    border-radius: 5;\n"
"}\n"
"QPushButton:pressed {\n"
"    background-color: rgb(204, 204, 204);\n"
"    \n"
"    \n"
"}")
        self.btn_point.setObjectName("btn_point")
        self.btn_result = QtWidgets.QPushButton(self.centralwidget)
        self.btn_result.setGeometry(QtCore.QRect(250, 440, 71, 61))
        self.btn_result.setStyleSheet("QPushButton {\n"
"    background-color: rgb(0, 170, 127);\n"
"    \n"
"    font: 81 12pt \"Montserrat ExtraBold\";    \n"
"    border-radius: 5;\n"
"    color: white\n"
"}\n"
"QPushButton:pressed {\n"
"    background-color: rgb(0, 141, 103);\n"
"    \n"
"    \n"
"}")
        self.btn_result.setObjectName("btn_result")
        Calculator.setCentralWidget(self.centralwidget)

        self.retranslateUi(Calculator)
        QtCore.QMetaObject.connectSlotsByName(Calculator)

    def retranslateUi(self, Calculator):
        _translate = QtCore.QCoreApplication.translate
        Calculator.setWindowTitle(_translate("Calculator", "Fatima"))
        self.btn_formulas.setText(_translate("Calculator", "Формулы"))
        self.label.setText(_translate("Calculator", "0"))
        self.btn_erase_everything.setText(_translate("Calculator", "C"))
        self.btn_erase.setText(_translate("Calculator", "<-"))
        self.btn_division.setText(_translate("Calculator", "/"))
        self.btn_1_div.setText(_translate("Calculator", "1/x"))
        self.btn_in_squae.setText(_translate("Calculator", "X2"))
        self.btn_percent.setText(_translate("Calculator", "%"))
        self.btn_multiplication.setText(_translate("Calculator", "*"))
        self.btn_7.setText(_translate("Calculator", "7"))
        self.btn_8.setText(_translate("Calculator", "8"))
        self.btn_9.setText(_translate("Calculator", "9"))
        self.btn_minus.setText(_translate("Calculator", "-"))
        self.btn_4.setText(_translate("Calculator", "4"))
        self.btn_5.setText(_translate("Calculator", "5"))
        self.btn_6.setText(_translate("Calculator", "6"))
        self.btn_2.setText(_translate("Calculator", "2"))
        self.btn_plus.setText(_translate("Calculator", "+"))
        self.btn_3.setText(_translate("Calculator", "3"))
        self.btn_1.setText(_translate("Calculator", "1"))
        self.btn_0.setText(_translate("Calculator", "0"))
        self.btn_point.setText(_translate("Calculator", "."))
        self.btn_result.setText(_translate("Calculator", "Result"))

pythagorean_theorem.py

#from PyQt6 import QtCore, QtGui, QtWidgets
from PyQt5 import QtCore, QtGui, QtWidgets
from math import sqrt


class Ui_Pythagorean_Theorem(object):
    def setupUi(self, Pythagorean_Theorem):
        Pythagorean_Theorem.setObjectName("Pythagorean_Theorem")
        Pythagorean_Theorem.resize(348, 391)
        Pythagorean_Theorem.setStyleSheet("background-color: rgb(76, 76, 76);")
        self.centralwidget = QtWidgets.QWidget(Pythagorean_Theorem)
        self.centralwidget.setObjectName("centralwidget")
        self.first_lineEdit = QtWidgets.QLineEdit(self.centralwidget)
        self.first_lineEdit.setGeometry(QtCore.QRect(20, 130, 311, 51))
        self.first_lineEdit.setStyleSheet("font: 81 15pt \"Montserrat ExtraBold\";\n"
"background-color: rgb(255, 255, 255);")
        self.first_lineEdit.setPlaceholderText("Первый катет")
        self.first_lineEdit.setObjectName("first_lineEdit")
        self.result = QtWidgets.QPushButton(self.centralwidget)
        self.result.setGeometry(QtCore.QRect(180, 310, 151, 51))
        self.result.setStyleSheet("QPushButton {\n"
"    background-color: rgb(255, 255, 255);\n"
"    font: 81 12pt \"Montserrat ExtraBold\";    \n"
"    border-radius: 5;\n"
"}\n"
"QPushButton:pressed {\n"
"    background-color: rgb(204, 204, 204);\n"
"        \n"
"}")
        self.result.setObjectName("result")
        self.second_lineEdit = QtWidgets.QLineEdit(self.centralwidget)
        self.second_lineEdit.setGeometry(QtCore.QRect(20, 190, 311, 51))
        self.second_lineEdit.setStyleSheet("font: 81 15pt \"Montserrat ExtraBold\";\n"
"background-color: rgb(255, 255, 255);")
        self.second_lineEdit.setObjectName("second_lineEdit")
        self.second_lineEdit.setPlaceholderText("Второй катет")
        self.text_p = QtWidgets.QLabel(self.centralwidget)
        self.text_p.setGeometry(QtCore.QRect(70, 10, 241, 51))
        self.text_p.setStyleSheet("font: 81 15pt \"Montserrat ExtraBold\";\n"
"color: rgb(255, 255, 255);")
        self.text_p.setObjectName("text_p")
        self.result_label = QtWidgets.QLabel(self.centralwidget)
        self.result_label.setGeometry(QtCore.QRect(20, 70, 311, 51))
        self.result_label.setStyleSheet("font: 81 15pt \"Montserrat ExtraBold\";\n"
"color: rgb(255, 255, 255);")
        self.result_label.setObjectName("result_label")
        self.third_lineEdit = QtWidgets.QLineEdit(self.centralwidget)
        self.third_lineEdit.setGeometry(QtCore.QRect(20, 250, 311, 51))
        self.third_lineEdit.setStyleSheet("font: 81 15pt \"Montserrat ExtraBold\";\n"
"background-color: rgb(255, 255, 255);")
        self.third_lineEdit.setPlaceholderText("Гипотенуза")
        self.third_lineEdit.setObjectName("third_lineEdit")
        self.more = QtWidgets.QPushButton(self.centralwidget)
        self.more.setGeometry(QtCore.QRect(20, 310, 151, 51))
        self.more.setStyleSheet("QPushButton {\n"
"    background-color: rgb(0, 170, 127);\n"
"    \n"
"    font: 81 12pt \"Montserrat ExtraBold\";    \n"
"    border-radius: 5;\n"
"    color: white\n"
"}\n"
"QPushButton:pressed {\n"
"    background-color: rgb(0, 141, 103);    \n"
"}")
        self.more.setObjectName("more")
        Pythagorean_Theorem.setCentralWidget(self.centralwidget)
        self.statusBar = QtWidgets.QStatusBar(Pythagorean_Theorem)
        self.statusBar.setObjectName("statusBar")
        Pythagorean_Theorem.setStatusBar(self.statusBar)

        self.retranslateUi(Pythagorean_Theorem)
        QtCore.QMetaObject.connectSlotsByName(Pythagorean_Theorem)

    def retranslateUi(self, Pythagorean_Theorem):
        _translate = QtCore.QCoreApplication.translate
        Pythagorean_Theorem.setWindowTitle(_translate("Pythagorean_Theorem", "Pythagorean Theorem"))
        self.result.setText(_translate("Pythagorean_Theorem", "Результат"))
        self.text_p.setText(_translate("Pythagorean_Theorem", "Теорема Пифагора"))
        self.result_label.setText(_translate("Pythagorean_Theorem", "0"))
        self.more.setText(_translate("Pythagorean_Theorem", "Подробнее"))

choose_theorem.py

#from PyQt6 import QtCore, QtGui, QtWidgets
from PyQt5 import QtCore, QtGui, QtWidgets

class Ui_Choose_theorem(object):
    def setupUi(self, Choose_theorem):
        Choose_theorem.setObjectName("Choose_theorem")
        Choose_theorem.resize(303, 328)
        Choose_theorem.setStyleSheet("background-color: rgb(76, 76, 76);")
        self.centralwidget = QtWidgets.QWidget(Choose_theorem)
        self.centralwidget.setObjectName("centralwidget")
        self.pushButton = QtWidgets.QPushButton(self.centralwidget)
        self.pushButton.setGeometry(QtCore.QRect(20, 160, 261, 71))
        self.pushButton.setStyleSheet("QPushButton {\n"
"    background-color: rgb(0, 170, 127);\n"
"    \n"
"    font: 81 12pt \"Montserrat ExtraBold\";    \n"
"    border-radius: 5;\n"
"    color: white\n"
"}\n"
"QPushButton:pressed {\n"
"    background-color: rgb(0, 141, 103);    \n"
"}")
        self.pushButton.setObjectName("pushButton")
        self.pushButton_2 = QtWidgets.QPushButton(self.centralwidget)
        self.pushButton_2.setGeometry(QtCore.QRect(20, 80, 261, 71))
        self.pushButton_2.setStyleSheet("QPushButton {\n"
"    background-color: rgb(255, 255, 255);\n"
"    font: 81 12pt \"Montserrat ExtraBold\";    \n"
"    border-radius: 5;\n"
"}\n"
"QPushButton:pressed {\n"
"    background-color: rgb(204, 204, 204);\n"
"        \n"
"}")
        self.pushButton_2.setObjectName("pushButton_2")
        self.label = QtWidgets.QLabel(self.centralwidget)
        self.label.setGeometry(QtCore.QRect(30, 20, 251, 41))
        self.label.setStyleSheet("color: rgb(255, 255, 255);\n"
"font: 87 17pt \"Montserrat Black\";")
        self.label.setObjectName("label")
        self.pushButton_3 = QtWidgets.QPushButton(self.centralwidget)
        self.pushButton_3.setGeometry(QtCore.QRect(20, 240, 261, 71))
        self.pushButton_3.setStyleSheet("QPushButton {\n"
"    background-color: rgb(255, 255, 255);\n"
"    font: 81 12pt \"Montserrat ExtraBold\";    \n"
"    border-radius: 5;\n"
"}\n"
"QPushButton:pressed {\n"
"    background-color: rgb(204, 204, 204);\n"
"        \n"
"}")
        self.pushButton_3.setObjectName("pushButton_3")
        Choose_theorem.setCentralWidget(self.centralwidget)

        self.retranslateUi(Choose_theorem)
        QtCore.QMetaObject.connectSlotsByName(Choose_theorem)

    def retranslateUi(self, Choose_theorem):
        _translate = QtCore.QCoreApplication.translate
        Choose_theorem.setWindowTitle(_translate("Choose_theorem", "Choose a theorem"))
        self.pushButton.setText(_translate("Choose_theorem", "Теорема Фалеса"))
        self.pushButton_2.setText(_translate("Choose_theorem", "Теорма Пифагора"))
        self.label.setText(_translate("Choose_theorem", "Выберите теорему"))
        self.pushButton_3.setText(_translate("Choose_theorem", "Теорема Виета"))

введите сюда описание изображения

→ Ссылка