Я пытаюсь прошить изображение с помощью pack () и pack_forget ().
Мы создаем специальный BMW, а огни работают на Raspberry Pi.У меня есть мигалки, работающие с использованием gpiozero, но теперь мне нужно показать это на дисплее на приборной панели.Я могу скрыть и показать изображение с помощью Label.pack_forget () и Label.pack () соответственно в функции, но не могу заставить его мигать.Я пробовал следующий код.
Это работает:
def showBG():
background_label.pack()
def hideBG():
background_label.pack_forget()
hideBttn = tk.Button(window, text="Hide Arrow", command = hideBG)
showBttn = tk.Button(window, text="Show Arrow", command = showBG)
Это не так:
import tkinter as tk
from time import sleep
def flashBG():
for i in range(0, 3):
background_label.pack()
sleep(.7)
background_label.pack_forget()
sleep(.3)
showHideBttn = tk.Button(window, text = "Flash Arrow", command = flashBG)
Первый пример показывает и скрывает стрелку, как и ожидалось: НажмитеНажмите кнопку «Скрыть», и она исчезнет, нажмите кнопку «Показать», и она появится.
Второй пример должен мигать 3 раза, как мигалка в вашем автомобиле на приборной панели.Ожидание ВКЛ. 0,7 сек., ВЫКЛ. Ожидание .3 сек. X3 ...
Нет ошибок, я нажимаю кнопку Показать Скрыть, и стрелка просто исчезает, когда цикл for завершается.