Python 3 закрывает окно сообщения tkinter через код - PullRequest
0 голосов
/ 29 ноября 2018

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

Все работает, но я хочу, чтобы окно сообщения исчезло через 5 секунд.Временная задержка не является проблемой, но попытка заставить окно сообщения выйти из строя - это еще одна вещь, использующая destroy(), но ничего.

Поймите, что есть уровни окна, то есть Toplevel.Но задавался вопросом, может ли кто-нибудь указать мне правильное направление.

1 Ответ

0 голосов
/ 29 ноября 2018

Без какого-либо кода это лучшее, что я могу вам дать.

Это объектно-ориентированная программа, и, честно говоря, я только начал понимать, что они делают.

Однако просто сфокусируйтесь на def create_window(self)

. Он принимает экземпляр окна t, который был объявлен, помещает всю информацию и .destroy.

import tkinter as tk

class MainWindow(tk.Frame):
    counter = 0
    def __init__(self, *args, **kwargs):
        tk.Frame.__init__(self, *args, **kwargs)
        self.button = tk.Button(self, text="Create new window", command=self.create_window)
        self.button.pack(side="top")

    def create_window(self):
        self.counter += 1
        t = tk.Toplevel(self)
        t.wm_title("Window #%s" % self.counter)
        l = tk.Label(t, text="This is window #%s" % self.counter)
        l.pack()
        b = tk.Button(t, text='close', command=t.destroy)
        b.pack()

if __name__ == "__main__":
    root = tk.Tk()
    main = MainWindow(root)
    main.pack(side="top", fill="both", expand=True)
    root.mainloop()

Надеюсь, это поможет!

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