Как обновить рамку изображения, отображаемую во Flet ⇐ Python
-
Anonymous
Как обновить рамку изображения, отображаемую во Flet
Я работаю с некоторыми подсказками распознавания, которые запускаются рядом с моей реальной программой. Эти подсказки распознавания обрезают и изменяют размер изображения, постоянно сохраняют/удаляют изображение, изменяя его по наиболее актуальному кадру распознавания.
Теперь моя проблема в том, как реализовать это с помощью Flet. На самом деле я пробовал несколько распространенных способов, которые используют ft.Image() и page.update(), обновление контейнера и даже обновление элементов управления. Но изображение останется прежним, даже если я удалю его со своего компьютера, а другое изображение будет иметь то же имя и формат в папке.
Вот пример того, что я пробовал.
время импорта импортировать флет в формате футов def main(страница: ft.Page): i = ft.Image(src='Python\\plate_0.jpg', on_animation_end= page.update()) защита анимации(е): sw.content = ft.Image( src=f'Python\\plate_0.jpg{time.time()}' ) страница.обновление() sw = ft.AnimatedSwitcher( я, переход = ft.AnimatedSwitcherTransition.SCALE, продолжительность=500, обратная_длительность = 500, switch_in_curve=ft.AnimationCurve.BOUNCE_OUT, switch_out_curve = ft.AnimationCurve.BOUNCE_IN, ) страница.добавить( св, ft.ElevatedButton("Анимировать!", on_click=animate), ) ft.app(цель=основной) Этот код отображает изображение, но при его замене в ОС, даже если вы нажмете «Анимировать», ничего не произойдет, кроме того, что экран погаснет. Я провел и другие тесты, создав класс (ImageSwitcher), используя OpenCV для чтения изображения и даже злоупотребляя page.update() всеми возможными способами.
Я работаю с некоторыми подсказками распознавания, которые запускаются рядом с моей реальной программой. Эти подсказки распознавания обрезают и изменяют размер изображения, постоянно сохраняют/удаляют изображение, изменяя его по наиболее актуальному кадру распознавания.
Теперь моя проблема в том, как реализовать это с помощью Flet. На самом деле я пробовал несколько распространенных способов, которые используют ft.Image() и page.update(), обновление контейнера и даже обновление элементов управления. Но изображение останется прежним, даже если я удалю его со своего компьютера, а другое изображение будет иметь то же имя и формат в папке.
Вот пример того, что я пробовал.
время импорта импортировать флет в формате футов def main(страница: ft.Page): i = ft.Image(src='Python\\plate_0.jpg', on_animation_end= page.update()) защита анимации(е): sw.content = ft.Image( src=f'Python\\plate_0.jpg{time.time()}' ) страница.обновление() sw = ft.AnimatedSwitcher( я, переход = ft.AnimatedSwitcherTransition.SCALE, продолжительность=500, обратная_длительность = 500, switch_in_curve=ft.AnimationCurve.BOUNCE_OUT, switch_out_curve = ft.AnimationCurve.BOUNCE_IN, ) страница.добавить( св, ft.ElevatedButton("Анимировать!", on_click=animate), ) ft.app(цель=основной) Этот код отображает изображение, но при его замене в ОС, даже если вы нажмете «Анимировать», ничего не произойдет, кроме того, что экран погаснет. Я провел и другие тесты, создав класс (ImageSwitcher), используя OpenCV для чтения изображения и даже злоупотребляя page.update() всеми возможными способами.