Skip to content

Commit 95b2d10

Browse files
committed
Super Simple 2-windows in 25 lines of code
1 parent d9f123c commit 95b2d10

File tree

1 file changed

+40
-0
lines changed

1 file changed

+40
-0
lines changed
Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
#!/usr/bin/env python
2+
"""
3+
Demo - Multiple read_all_window(timeout=20)
4+
A 2-window event loop run in async mode
5+
6+
Super-simple, 25 lines of code.
7+
8+
Copyright 2021 PySimpleGUI
9+
"""
10+
11+
import PySimpleGUI as sg
12+
13+
sg.set_options(font='_ 18')
14+
15+
window1 = sg.Window('ONE', [[sg.T('Window 1',size=(30,1),k='-T-')],[sg.B('Run', k='-B-'), sg.B('Exit')]],
16+
finalize=True)
17+
18+
window2 = sg.Window('TWO', [[sg.T('Window 2',k='-T-')],[sg.B('Run', k='-B-'),sg.B('Exit')]], finalize=True,
19+
location=(window1.current_location()[0]-250,window1.current_location()[1]))
20+
21+
i, paused = 0, [False, False]
22+
23+
while True: # Event Loop
24+
window, event, values = sg.read_all_windows(timeout=10)
25+
print(window, event, values) if event != sg.TIMEOUT_EVENT else None
26+
if window == sg.WIN_CLOSED and event == sg.WIN_CLOSED:
27+
window1.close()
28+
window2.close()
29+
sg.popup_auto_close('Exiting...')
30+
break
31+
if event in (sg.WINDOW_CLOSED, 'Exit'):
32+
window.close()
33+
if not paused[0]:
34+
window1['-T-'].update('{:02d}:{:02d}.{:02d}'.format((i // 100) // 60, (i // 100) % 60, i % 100))
35+
if not paused[1]:
36+
window2['-T-'].update('{:02d}:{:02d}.{:02d}'.format((i // 100) // 60, (i // 100) % 60, i % 100))
37+
if event == '-B-':
38+
paused[0 if window == window1 else 1] = not paused[0 if window == window1 else 1]
39+
window['-B-'].update('Run' if not paused[0 if window == window1 else 1] else 'Pause')
40+
i += 1

0 commit comments

Comments
 (0)