Fixed flicker problem!!! Updated all of the PySimpleGUIWeb demos
This commit is contained in:
parent
f0e1642437
commit
a2443c63ad
14 changed files with 413 additions and 298 deletions
|
@ -2,69 +2,42 @@ import PySimpleGUIWeb as sg
|
|||
import random
|
||||
import string
|
||||
|
||||
"""
|
||||
ooooooooooooo .o8 oooo
|
||||
8' 888 `8 "888 `888
|
||||
888 .oooo. 888oooo. 888 .ooooo.
|
||||
888 `P )88b d88' `88b 888 d88' `88b
|
||||
888 .oP"888 888 888 888 888ooo888
|
||||
888 d8( 888 888 888 888 888 .o
|
||||
o888o `Y888""8o `Y8bod8P' o888o `Y8bod8P'
|
||||
|
||||
|
||||
|
||||
oooooooooooo oooo .
|
||||
`888' `8 `888 .o8
|
||||
888 888 .ooooo. ooo. .oo. .oo. .ooooo. ooo. .oo. .o888oo
|
||||
888oooo8 888 d88' `88b `888P"Y88bP"Y88b d88' `88b `888P"Y88b 888
|
||||
888 " 888 888ooo888 888 888 888 888ooo888 888 888 888
|
||||
888 o 888 888 .o 888 888 888 888 .o 888 888 888 .
|
||||
o888ooooood8 o888o `Y8bod8P' o888o o888o o888o `Y8bod8P' o888o o888o "888"
|
||||
"""
|
||||
# Example with Table element
|
||||
|
||||
def word():
|
||||
return ''.join(random.choice(string.ascii_lowercase) for i in range(10))
|
||||
|
||||
# ------------------ Create a fake table ------------------
|
||||
class Fake():
|
||||
@classmethod
|
||||
def word(self):
|
||||
return ''.join(random.choice(string.ascii_lowercase) for i in range(10))
|
||||
|
||||
@classmethod
|
||||
def number(self, max=1000):
|
||||
return random.randint(0,max)
|
||||
def number(max_val=1000):
|
||||
return random.randint(0,max_val)
|
||||
|
||||
|
||||
def make_table(num_rows, num_cols):
|
||||
data = [[j for j in range(num_cols)] for i in range(num_rows)]
|
||||
data[0] = [Fake.word() for _ in range(num_cols)]
|
||||
data[0] = [word() for _ in range(num_cols)]
|
||||
for i in range(1, num_rows):
|
||||
data[i] = [Fake.word(), *[Fake.number() for i in range(num_cols - 1)]]
|
||||
data[i] = [word(), *[number() for i in range(num_cols - 1)]]
|
||||
return data
|
||||
|
||||
table_data = make_table(num_rows=15, num_cols=6)
|
||||
|
||||
# ------------------ Create a window layout ------------------
|
||||
layout = [[sg.Table(values=table_data,
|
||||
enable_events=True,
|
||||
display_row_numbers=True,
|
||||
font='Courier 14',
|
||||
row_header_text='Row #',
|
||||
key='_table_',
|
||||
text_color='red')],
|
||||
layout = [[sg.Table(values=table_data, enable_events=True,
|
||||
display_row_numbers=True, font='Courier 14',
|
||||
row_header_text='Row #', key='_table_', text_color='red')],
|
||||
[sg.Button('Exit')],
|
||||
[sg.T('Selected rows = '), sg.T('', size=(30,1), key='_selected_rows_')],
|
||||
[sg.T('Selected value = '), sg.T('', size=(30,1), key='_selected_value_')]]
|
||||
[sg.Text('Selected rows = '), sg.Text('', size=(30,1), key='_selected_rows_')],
|
||||
[sg.Text('Selected value = '), sg.Text('', size=(30,1), key='_selected_value_')]]
|
||||
|
||||
# ------------------ Create the window ------------------
|
||||
window = sg.Window('Table Element Example').Layout(layout)
|
||||
window = sg.Window('Table Element Example', layout)
|
||||
|
||||
# ------------------ The Event Loop ------------------
|
||||
while True:
|
||||
event, values = window.Read()
|
||||
event, values = window.read()
|
||||
print(event, values)
|
||||
if event in (None, 'Exit'):
|
||||
break
|
||||
window.Element('_selected_rows_').Update(values['_table_'])
|
||||
window.Element('_selected_value_').Update(window.Element('_table_').SelectedItem)
|
||||
window['_selected_rows_'].update(values['_table_'])
|
||||
window['_selected_value_'].update(window['_table_'].SelectedItem)
|
||||
# ------------------ User closed window so exit ------------------
|
||||
window.Close()
|
||||
window.close()
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue