Merge pull request #4179 from PySimpleGUI/Dev-latest

Dev latest
This commit is contained in:
PySimpleGUI 2021-04-12 17:53:16 -04:00 committed by GitHub
commit ac4d923cc8
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 6 additions and 43 deletions

View File

@ -1,4 +1,5 @@
#!/usr/bin/env python #!/usr/bin/env python
import PySimpleGUI as sg import PySimpleGUI as sg
import time import time
@ -12,6 +13,7 @@ import time
this design were not used, then the time value displayed would slowly drift by the amount of time this design were not used, then the time value displayed would slowly drift by the amount of time
it takes to execute the PySimpleGUI read and update calls (not good!) it takes to execute the PySimpleGUI read and update calls (not good!)
Copyright 2021 PySimpleGUI
""" """
@ -34,7 +36,8 @@ window = sg.Window('Running Timer', layout,
auto_size_buttons=False, auto_size_buttons=False,
keep_on_top=True, keep_on_top=True,
grab_anywhere=True, grab_anywhere=True,
element_padding=(0, 0)) element_padding=(0, 0), finalize=True,
right_click_menu=sg.MENU_RIGHT_CLICK_EDITME_EXIT)
current_time, paused_time, paused = 0, 0, False current_time, paused_time, paused = 0, 0, False
start_time = time_as_int() start_time = time_as_int()
@ -60,7 +63,8 @@ while True:
start_time = start_time + time_as_int() - paused_time start_time = start_time + time_as_int() - paused_time
# Change button's text # Change button's text
window['-RUN-PAUSE-'].update('Run' if paused else 'Pause') window['-RUN-PAUSE-'].update('Run' if paused else 'Pause')
elif event == 'Edit Me':
sg.execute_editor(__file__)
# --------- Display timer in window -------- # --------- Display timer in window --------
window['text'].update('{:02d}:{:02d}.{:02d}'.format((current_time // 100) // 60, window['text'].update('{:02d}:{:02d}.{:02d}'.format((current_time // 100) // 60,
(current_time // 100) % 60, (current_time // 100) % 60,

View File

@ -1,41 +0,0 @@
import PySimpleGUI as sg
import time
# Basic timer in PSG
def Timer():
sg.theme('Dark')
sg.set_options(element_padding=(0, 0))
form_rows = [[sg.Text(size=(8, 2), font=('Helvetica', 20),
justification='center', key='text')],
[sg.Button('Pause', key='-RUN-PAUSE-'),
sg.Button('Reset'),
sg.Exit(button_color=('white', 'firebrick4'))]]
window = sg.Window('Running Timer', form_rows,
no_titlebar=True, auto_size_buttons=False)
i = 0
paused = False
start_time = int(round(time.time() * 100))
while True:
# This is the code that reads and updates your window
button, values = window.read(timeout=10)
window['text'].update('{:02d}:{:02d}.{:02d}'.format(
(i // 100) // 60, (i // 100) % 60, i % 100))
if values is None or button == 'Exit':
break
if button == 'Reset':
i = 0
elif button == '-RUN-PAUSE-':
paused = not paused
window['-RUN-PAUSE-'].update('Run' if paused else 'Pause')
if not paused:
i += 1
window.close()
Timer()