@Surv16893

Множественное наследований Python?

0HKno14--4Y.jpg

Добрый день! Подскажите, как сделать так, чтобы классы наследовались так, как показано на картинке. Класс ProfilerApp - инициализация в PyQt5, Object class описывает интерфейс ( LoginWindowClass - Окно авторизации, MainWindowClass - основное окно приложения), а ConnectionClass - подключение к серверу
  • Вопрос задан
  • 427 просмотров
Пригласить эксперта
Ответы на вопрос 1
@Sergey6661313
в python и в qt наследованием обозначаются разные вещи...
в python имеется в виду что потомки порождаются с такими же методами что и родители, а в qt имеется в виду просто ссылка у потомков о том кто их породил. и у родителей просто список их детей..
В связи с тем что я не вижу в вашем случае смысла объекту ConnectionClass иметь методы ProfilerAppClass то предположу что вам нужны просто ссылки на детей и родителей.

class MainWindowClass(QMainWindow):
    def __init__(self, parent)
    super().__init__(parent)
    self.parent = parent  # - просто создаём себе переменную где указываем родителя. Который передаётся при создании экземпляра. 


class LoginWindowClass(QWidget):
    def __init__(self, parent)
        super().__init__(parent)
        self.parent = parent

class ConnectionClass(QTcpServer):
    def __init__(self, parent)
        super().__init__(parent)
        self.parent = parent

class ProfilerAppClass():
    def __init__():
        self.childs = {  # и список чайлдов...  хотя QT по идее сам должен был составить подобный список, и вообще не понятно зачем отдельный клас, можно сразу использовать словарь...
            "MainWindow": MainWindowClass(self)
            "LoginWindow": LoginWindowClass(self)
            "Connection": ConnectionClass(self)
        }
        
ProfilerApp = ProfilerAppClass()
ProfilerApp.childs.get("MainWindow").show()
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы