Наследие питона - PullRequest
       4

Наследие питона

0 голосов
/ 02 октября 2018

У меня есть вопрос, который звучит, возможно, странно, но я хочу вызвать функцию моего родительского класса внутри своих детей.

Я использую tkinter и MyChild уже наследуются от фрейма.

ex:

class MyParent:
    def __init__(self):
        do_things()

    def myfunction(self):
        child_class = MyChild()

    def call_me(self):
        print("I'm here!")

class MyChild:
    def __init__(self):
        do_things()

    def my_call(self):
        #here call the call_me function

здесь я хочу, чтобы при вызове функции my_call в классе MyChild она вызывала функцию call_me класса MyParent.Я просто хочу знать, если и как можно вызвать call_me в функции my_call, например Myparent.call_me()

1 Ответ

0 голосов
/ 02 октября 2018

Исходя из кода вашего вопроса, вашему ребенку нужно будет сказать, кто его родитель.Обычно это делается, когда вы создаете ребенка.Дочерний объект может хранить ссылку, чтобы ее можно было использовать всякий раз, когда ему нужно вызвать метод для родителя.

Пример:

class MyParent:
    def myfunction(self):
        child_class = MyChild(parent=self)

    def call_me(self):
        print("I'm here!")

class MyChild:
    def __init__(self, parent):
        self.parent = parent
        do_things()

    def my_call(self):
        self.parent.call_me()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...