使用PysimpleGUI的Window
类的close()
方法和time
模块的sleep()
方法实现窗口自动关闭。
代码实现:
import PySimpleGUI as sg
import time
layout = [[sg.Text('这是一个PysimpleGUI窗口')],
[sg.Button('关闭')]]
window = sg.Window('窗口标题', layout)
# 自动关闭窗口的时间(单位:秒)
auto_close_sec = 1
while True:
event, values = window.read(timeout=100)
if event == '关闭' or event == sg.WIN_CLOSED:
break
# 判断是否到了自动关闭的时间
if time.time() - window.TKroot.after_id_time >= auto_close_sec:
window.close()
# 自动判断窗口关闭事件是否已经发生
if auto_close_sec == 0 and event == '__TIMEOUT__':
window.close()
window.TKroot.after(100, '__TIMEOUT__')
window.close()