PySimpleGUI/DemoPrograms/Demo_Paned_Window.py

53 lines
2.0 KiB
Python
Raw Normal View History

import PySimpleGUI as sg
2019-12-24 23:52:47 +00:00
sg.theme('GreenTan')
col1 = sg.Col([[sg.Text('in pane1', text_color='blue')],
[sg.Text('Pane1')],
[sg.Text('Pane1')],
])
col2 = sg.Col([[sg.Text('in pane2', text_color='red')],
[sg.Text('Pane2')],
[sg.Input('', key='-IN2-')],
[sg.Text('Pane2')],
[sg.Text('Pane2')],
], key='-COL2-', visible=False)
col3 = sg.Col([[sg.Text('in pane 4', text_color='green')],
[sg.Input(key='-IN3-', enable_events=True)],
], key='-COL3-', visible=False)
col4 = sg.Col([[sg.Text('Column 4', text_color='firebrick')],
[sg.Input()],
], key='-COL4-')
col5 = sg.Col([[sg.Frame('Frame', [[sg.Text('Column 5', text_color='purple')],
[sg.Input()],
])]])
layout = [[sg.Text('Click'), sg.Text('', key='-OUTPUT-')],
[sg.Button('Remove'), sg.Button('Add')],
[sg.Pane([col5,
sg.Col([[sg.Pane([col1, col2, col4], handle_size=15,
orientation='v', background_color='red', show_handle=True,
visible=True, key='-PANE-', border_width=0,
relief=sg.RELIEF_GROOVE), ]]), col3],
orientation='h', background_color=None, size=(160, 160),
relief=sg.RELIEF_RAISED, border_width=0)]
]
window = sg.Window('Window Title', layout, border_depth=5,
default_element_size=(15, 1), resizable=True)
while True: # Event Loop
event, values = window.read()
print(event, values)
if event in (None, 'Exit'):
break
if event == 'Remove':
window['-COL2-'].update(visible=False)
window['-COL3-'].update(visible=False)
elif event == 'Add':
window['-COL2-'].update(visible=True)
window['-COL3-'].update(visible=True)
window['-IN2-'].update(values['-IN3-'])
window.close()