Получение ошибки рекурсии при создании класса кнопки - PullRequest
0 голосов
/ 24 февраля 2020

Я создаю класс кнопки для проекта python, и во время выполнения я получаю следующую ошибку:

my_Button = Button(master)
[Previous line repeated 496 more times]
RecursionError: maximum recursion depth exceeded

Process finished with exit code 1

Это классы, которые я создал:

from tkinter import *
import random


class Window:

    def __init__(self, master):
        master.title('Black Jack')
        master.configure(bg='green')
        master.geometry('500x500')


class Button:

    def __init__(self, master, text, font, x, y):
        master = master
        self.text = text
        self.font = font
        self.x = x
        self.y = y
        my_Button = Button(master, text=text, font=font)
        my_Button.pack(x=x, y=y)

Это код:

from tkinter import *
import Classes

Helvetica = font = ('Helvetica', 15, 'bold italic')
Times = font = ('times', 13, 'bold italic')

root = Tk()
window = Classes.Window(root)
playButton = Classes.Button(root, 'Play', font, 200, 200)

Почему я получаю ошибку рекурсии? Я не использую петли.

1 Ответ

0 голосов
/ 24 февраля 2020

Из вашего кода вам нужно проверить следующий код, который бы рекурсивно вызывал метод __init__.

my_Button = Button(master, text=text, font=font)

Когда вы вызываете вызываемый вами метод Button () метод init каждый раз. Это, следовательно, застрянет в al oop. И следующая строка кода из того, что я понимаю, никогда не будет выполнена из-за продолжающейся рекурсии.

my_Button.pack(x=x, y=y)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...