@6IXK1LL
Дебил

Почему у меня начинает работать функция до приказа в пайтон?

У меня есть класс1:

import tkinter
from tkinter.font import *
from playsound import playsound

class System:
    def showinfo(self,showinfotext="ошибочка",showinfobtntext="Ок"):
        self.root = tkinter.Tk()
        self.root.title("ERROR")
        self.root.geometry("220x100")
        f = Font(family="times", size=10, weight=NORMAL)

        print(f.actual())
        print(f.actual("family"))
        print(f.actual("weight"))

        print(f.config())
        print(f.cget("family"))
        print(f.cget("weight"))

        print(names())

        print(f.measure("hello"), f.metrics("linespace"))

        print(f.metrics(displayof=self.root))

        f = Font(font=("Arial", 20, "bold"))
        print(f.measure("hello"), f.metrics("linespace", displayof=self.root))

        w = tkinter.Label(self.root, text=showinfotext, font=f)
        w.pack()

        w = tkinter.Button(self.root, text=showinfobtntext, command=self.quit)
        w.pack()

        fb = Font(font=w["font"]).copy()
        fb.config(weight=BOLD)

        w.config(font=fb)

        playsound("D:\Programms\projects\py\z.wav")
        self.root.iconbitmap(r"D:\Programms\projects\py\MEGUI\content\licon.ico")
        tkinter.mainloop()
    def quit(self):
        self.root.destroy()
        playsound("D:\Programms\projects\py\y.wav")


root = tkinter.Tk()
root.geometry("700x400")
btn = tkinter.Button(
    root,
    text="BUTON",
    command=System().showinfo()
    )
btn.pack()
root.mainloop()


почему функция начинает работать со старта? Да еще и кнопка пропадает
  • Вопрос задан
  • 76 просмотров
Решения вопроса 2
SoreMix
@SoreMix Куратор тега Python
yellow
Потому что вы ее сами вызвали, поставив () в конце имени функции в конструкторе Button
Ответ написан
Комментировать
hottabxp
@hottabxp Куратор тега Python
Сначала мы жили бедно, а потом нас обокрали..
Уберите круглые скобки в конце command=System().showinfo()
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы