【发布时间】:2021-12-24 21:44:15
【问题描述】:
我正在编写一个代码来处理图像,并且我正在尝试使用 PySimpleGUI 制作一个 GUI。我希望我的代码在 gui 仍然打开时在后台运行,但是除非我关闭 GUI 然后代码继续运行,否则代码不会继续。我试图在添加“break”函数之前放置处理代码,但是,我给出了一个错误代码,即break在循环之外
import io
import os
import PySimpleGUI as sg
from PIL import Image, ImageDraw, ImageEnhance, ImageOps
import PIL.ImageOps
file_types = [
("All files (*.*)", "*.*")]
image_viewer_column=[
[sg.Text("HANG IN THERE\n"
"YOUR IMAGE IS PROCESSING\n"
"WE'RE TURNING IT INTO A PRINTABLE VERSION \n"
"NOT TOO LONG NOW")],
[sg.Text(size=(40,1), key="-TOUT-")],
[sg.Image(key="-IMAGE-0")],
]
file_list_column = [
[sg.Image(key="-IMAGE-")],
[
sg.Text("PROCESSING IMAGE"),
sg.Button("Cancel"),
],
[
sg.Button("Close"),
],
]
layout = [
[
sg.Column(file_list_column),
sg.VSeparator(),
sg.Column(image_viewer_column),
]
]
window = sg.Window("Image Converter", layout)
while True:
event, values = window.read()
image = Image.open('output.png')
inverted_image = PIL.ImageOps.invert(image)
inverted_image.save('output.png')
break
window.close()
无论如何我可以做到这一点吗?任何帮助将不胜感激
【问题讨论】:
-
你需要使用线程
标签: python pysimplegui