«Self.Label not callable» в классе Tkinter - PullRequest
0 голосов
/ 19 мая 2019

Я использую графический интерфейс tkinter для вызова изображений и кнопок для создания своего рода «графического романа» (возможно, не самого подходящего, но у меня нет достаточно времени, чтобы искать и использовать другую библиотеку). Соответствующий код прилагается:

import random
import tkinter as tk
from tkinter import *
from PIL import Image, ImageTk

class juego:
    def __init__(self):
        self.root = tk.Tk()
        self.nombreimagen = "room.jpg"
        self.strparaA = " "
        self.strparaB = " "
        self.comparaA = " "
        self.comparaB = " "
        self.boton1 = tk.Button()
        self.boton2 = tk.Button()
        self.image = Image.open(self.nombreimagen)
        self.estaes = ImageTk.PhotoImage(self.image)
        self.pantalla = tk.Label()



    def comenzar(self):
        self.nombreimagen = "room.jpg"
        self.root.geometry("960x720")
        self.image = Image.open(self.nombreimagen)
        self.estaes = ImageTk.PhotoImage(self.image)
        self.pantalla = tk.Label(self.root, image=self.estaes)
        self.pantalla.place(x=0, y=0)        
        self.boton1(self.root, text="A: Salir a la calle", command=self.A())
        self.boton2(self.root, text="B: Quedarse en la casa", command=print("B"))
        self.boton1.pack(side="bottom")
        self.boton2.pack(side="bottom")
        self.root.mainloop()

    def A(self):
        self.pantalla.forget()
        self.image = Image.open("salir.png")
        self.estaes = ImageTk.PhotoImage(self.image)
        self.pantalla(self.root, image=self.estaes)
        self.pantalla.place(x=0, y=0)
        self.boton1(self.root, text="Funciona?")
        self.boton2(self.root, text="Funciona!")
        self.boton1.pack(side="bottom")
        self.boton2.pack(side="bottom")

nombre = juego()
nombre.comenzar()

Где «коменцар» - это функция для рисования стартового окна игры. Когда я его выполняю, я получаю сообщение об ошибке «Объект метки не вызывается» в строке

self.pantalla(self.root, image=self.estaes)

self.pantalla должен быть меткой, определенной в ____ init ____

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