def searchRouteByLocationWindow(location): layoutOperation = [[sg.Text('What place do you want to explore ?')], [sg.InputText(location)], [], [sg.Text('By what do you want to travel ?')], [ sg.Checkbox('Personal car'), sg.Checkbox('On foot', default=True), sg.Checkbox("Public transportation") ], [sg.Text('What are your interests ?')], [ sg.Checkbox('Arts'), sg.Checkbox('Arhitectural'), sg.Checkbox("Entertainment") ], [sg.Button('Search for me'), sg.Button('Cancel')]] windowOperation = sg.Window('Text it out').Layout(layoutOperation) while True: eventOperation, valuesOperation = windowOperation.Read() if eventOperation in (None, 'Cancel'): windowOperation.close() main() break elif eventOperation in ('Search for me'): windowOperation.close() print(valuesOperation) searchRouteByLocationAlgorithm(valuesOperation[0], valuesOperation)
import PySimpleGUIWeb as sg import datetime DEFAULT_BASE64_ICON = b'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' sg.ChangeLookAndFeel('GreenTan') layout = [ [sg.Text('PySimpleGUIWeb running on the web and in your browser!', size=(60,1), font=('Comic sans ms', 20), text_color='red')], [sg.Text('This program has been running for... ', size=(30,1)),sg.Text('', size=(30,1), key='_DATE_')], [sg.Text('', size=(30,1), key='_TEXT_')], [sg.Input('Single Line Input', do_not_clear=True, enable_events=True, size=(30,1))], [sg.Multiline('Multiline Input', do_not_clear=True, size=(40,4), enable_events=True)], [sg.Multiline('Multiline Output', size=(80,8), key='_MULTIOUT_', font='Courier 12')], [sg.Checkbox('Checkbox 1', enable_events=True, key='_CB1_'), sg.Checkbox('Checkbox 2', default=True, enable_events=True, key='_CB2_')], [sg.Combo(values=['Combo 1', 'Combo 2', 'Combo 3'], default_value='Combo 2', key='_COMBO_',enable_events=True, readonly=False, tooltip='Combo box', disabled=False, size=(12,1))], [sg.Listbox(values=('Listbox 1', 'Listbox 2', 'Listbox 3'), size=(10,3))], [sg.Slider((1,100), default_value=80, key='_SLIDER_', visible=True, enable_events=True, orientation='h')], [sg.Spin(values=(1,2,3),initial_value=2, size=(4,1))], [sg.Image(filename=r'dot:logo.jpg')], [sg.OK(), sg.Button('Exit', button_color=('white', 'red'))] ] window = sg.Window('My PySimpleGUIWeb Window', default_element_size=(30,1), font='Helvetica 18', background_image=r'dot:logo.jpg' ).Layout(layout) start_time = datetime.datetime.now()
size=(14, 1), tooltip='select data type', readonly=True, default_value=types[0]), sg.Input('0', size=(10, 1), key='ADR_NEW', tooltip='enter data address'), sg.Input('data_alias', size=(20, 1), key='ALIAS_NEW', tooltip='enter data alias'), sg.Drop(values=intervals, key='INTERVAL_NEW', size=(6, 1), tooltip='select acquisition interval', readonly=True, default_value=intervals[3]), sg.Checkbox('Active', key='ACTIVATE_NEW') ] column0 = [ [sg.Text('New entry', font=("Helvetica", 25))], [ sg.Text( 'Update below fields with desiered configuration to fetch data from PLC' ) ], data_row.copy(), [sg.Button("Add"), sg.Button('Clear')], [sg.Text('Edit actual entries', font=("Helvetica", 25))], [ sg.Text( 'Select PLC IP address to get configured data aliases, then choose one to get all parameters connected with it' ) ]
visible=True, key='_FILE_') ], #sg.Spin(values=('Target0001','Target0002','Target0003','Target0004','Target0005'),size=(150,150),enable_events=True, key='_LISTnames_')], #[sg.Text('', size=(30,1), key='_TEXT_000')], # [sg.MultilineOutput('Multiline Output', size=(40,8), key='_MULTIOUT_', font='Courier 12')], #[sg.Output(font='Courier 11', size=(60,8))], [ sg.Text('', size=(20, 1)), sg.Text('BAL Class', size=(40, 1), font=('Comic sans ms', 20), text_color='Blue') ], [ sg.Text('', size=(20, 1)), sg.Checkbox('HiBAL', enable_events=True, default=True, key='_hibal_'), sg.Checkbox('LoBAL', enable_events=True, key='_lobal_'), sg.Checkbox('FeLoBAL', enable_events=True, key='_felobal_'), sg.Checkbox('NTroughs', enable_events=True, key='_manynarrowsys_'), sg.Checkbox('J0300Analog', enable_events=True, key='_j0300analog_'), sg.Checkbox('Reddened', enable_events=True, key='_reddened_'), sg.Checkbox('IronEmitter', enable_events=True, key='_ironemitter_'), sg.Checkbox('Redshifted', enable_events=True, size=(20, 1), key='_redshifted_'), sg.Checkbox('Acceleration', enable_events=False, size=(20, 1), key='_accn_'), sg.Checkbox('Stable',
[sg.Spin(values=('Spin Box 1', '2', '3'), initial_value='Spin Box 3')] ] layout = [ [sg.Menu(menu_def, tearoff=True)], [ sg.Text('All graphic widgets in one window!', size=(30, 1), justification='center', font=("Helvetica", 25), relief=sg.RELIEF_RIDGE) ], [sg.Text('Here is some text.... and a place to enter text')], [sg.InputText('This is my text')], [ sg.Frame(layout=[[ sg.Checkbox('Checkbox', size=(10, 1)), sg.Checkbox('My second checkbox!', default=True) ], [ sg.Radio('My first Radio! ', "RADIO1", default=True, size=(10, 1)), sg.Radio('My second Radio!', "RADIO1") ]], title='Options', title_color='red', relief=sg.RELIEF_SUNKEN, tooltip='Use these to set flags') ], [
def HowDoI(): ''' Make and show a window (PySimpleGUI form) that takes user input and sends to the HowDoI web oracle Excellent example of 2 GUI concepts 1. Output Element that will show text in a scrolled window 2. Non-Window-Closing Buttons - These buttons will cause the form to return with the form's values, but doesn't close the form :return: never returns ''' # ------- Make a new Window ------- # sg.ChangeLookAndFeel('GreenTan') # give our form a spiffy set of colors layout = [ [sg.Text('Ask and your answer will appear here....', size=(40, 1))], [sg.MultilineOutput(size_px=(980, 400), key='_OUTPUT_')], # [ sg.Spin(values=(1, 2, 3, 4), initial_value=1, size=(2, 1), key='Num Answers', font='Helvetica 15'), [ sg.Checkbox('Display Full Text', key='full text', font='Helvetica 15'), sg.T('Command History', font='Helvetica 15'), sg.T('', size=(40, 3), text_color=sg.BLUES[0], key='history') ], [ sg.Multiline(size=(85, 5), enter_submits=True, key='query', do_not_clear=False), sg.ReadButton('SEND', button_color=(sg.YELLOWS[0], sg.BLUES[0]), bind_return_key=True), sg.Button('EXIT', button_color=(sg.YELLOWS[0], sg.GREENS[0])) ] ] window = sg.Window( 'How Do I ??', default_element_size=(30, 1), icon=DEFAULT_ICON, font=('Helvetica', ' 17'), default_button_element_size=(8, 2), return_keyboard_events=False, ) window.Layout(layout) # ---===--- Loop taking in user input and using it to query HowDoI --- # command_history = [] history_offset = 0 while True: event, values = window.Read() # print(event, values) if type(event) is int: event = str(event) if event == 'SEND': query = values['query'].rstrip() window.Element('_OUTPUT_').Update(query, append=True) print(query) QueryHowDoI(query, 1, values['full text'], window) # send the string to HowDoI command_history.append(query) history_offset = len(command_history) - 1 window.FindElement('query').Update( '' ) # manually clear input because keyboard events blocks clear window.FindElement('history').Update('\n'.join( command_history[-3:])) elif event == None or event == 'EXIT': # if exit button or closed using X break elif 'Up' in event and len(command_history): # scroll back in history command = command_history[history_offset] history_offset -= 1 * (history_offset > 0) # decrement is not zero window.FindElement('query').Update(command) elif 'Down' in event and len( command_history): # scroll forward in history history_offset += 1 * (history_offset < len(command_history) - 1 ) # increment up to end of list command = command_history[history_offset] window.FindElement('query').Update(command) elif 'Escape' in event: # clear currently line window.FindElement('query').Update('') window.Close()
# # col4 = sg.Column([ # [sg.Button('Render', font=('Futura', 18),pad=(0,100), size=(300,100),key='RENDER')], # [sg.Button('ABORT', font=('Futura', 18),button_color='yellow', key='QUEUE',pad=(0,(450,0)))] # ]) # layout = [[sg.Frame('Watch Folder',[]),sg.InputText('', size=(65, 1), key='WATCHPATH')],[col1, col2, col3,col4]] """CELLPHONE""" col1 = sg.Column([ [sg.Button('Refresh Source', font=('Futura', 18), key='REFRESH')], [sg.Listbox('', [], size=(360, 200), key='SOURCEPATHS', enable_events=True)] ]) col2 = sg.Column([ [sg.Button('Refresh Presets', font=('Futura', 18), key='REFRESHPR')], [sg.Checkbox('Custom only', key='CUSTOMPRESET', default=True, font=('Futura', 15))], [sg.Listbox(preset_list, key='RENDERPRESET', size=(360, 100))] ]) col3 = sg.Column([ [sg.Button('Queue', font=('Futura', 18), key='QUEUE'), sg.Button('Clear', font=('Futura', 18), key='CLEAR')], [sg.Listbox('', [], key='TABLE', size=(360, 200), )], ]) col5 = sg.Column([ [sg.Button('Render', font=('Futura', 18), pad=(5, 5), size=(360, 100), key='RENDER')], [sg.Button('List Folders in Destination', font=('Futura', 18), key='REFRESHOUTPUT')], [sg.Listbox('', [], size=(360, 200), key='OUTPUTSUB', enable_events=True)], [sg.Button('ABORT', font=('Futura', 18), button_color='yellow', key='ABORT', pad=(305, 5))] ])
], [ sg.Text( "Czas trwania pobytu (w dniach): " ), sg.Text(values['dni']) ], [ sg.Text( 'Wolne pokoje (nr.pok - typ - piętro - budynek): ' ), sg.InputCombo(pokoje, key='pokoj') ], [sg.Text('Dodatkowe wyposażenie: ')], [ sg.Checkbox('Szlafrok', key='szlafrok'), sg.Checkbox('Bamboszki', key='bamboszki') ], [sg.Text('Pakiety wyżywieniowe: ')], [ sg.Checkbox('Śniadania', key='sniadania'), sg.Checkbox('Obiady', key='obiady') ], [ sg.Checkbox('Obiadokolacje', key='obiadokolacje'), sg.Checkbox('Kolacje', key='kolacje') ],