39 lines
		
	
	
	
		
			1.4 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			39 lines
		
	
	
	
		
			1.4 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
| #PySimple examples (v 3.8)
 | |
| #Tony Crewe
 | |
| #Sep 2018
 | |
| 
 | |
| import PySimpleGUI as sg
 | |
| sg.SetOptions(font= ('Calibri', 12, 'bold'))       
 | |
| 
 | |
| layout = [
 | |
|     [sg.Text('Spinner and Combo box demo', font = ('Calibri', 14, 'bold'))],
 | |
|     [sg.Spin([sz for sz in range (-9,10)], size = (2,1),initial_value = 0),
 | |
|     sg.Spin([sz for sz in range (-9,10)], size = (2,1), initial_value = 0),
 | |
|     sg.Text('Pick operation ->', size = (15,1)),
 | |
|     sg.InputCombo(['Add','Subtract','Multiply','Divide'], size = (8,6))],
 | |
|     [sg.Text('Result:   ')],[sg.InputText(size = (5,1), key = '_result_'),
 | |
|      sg.ReadButton('Calculate', button_color = ('White', 'Red'))]]
 | |
| 
 | |
| window = sg.Window('Enter & Display Data', grab_anywhere= False).Layout(layout)
 | |
| 
 | |
| while True:
 | |
|     button, value = window.Read()
 | |
| 
 | |
|     if button is not None:
 | |
|         #convert returned values to integers
 | |
|         val = [int(value[0]), int(value[1])]
 | |
|         if value[2] == 'Add':
 | |
|             result = val[0] + val[1]
 | |
|         elif value[2] == 'Multiply':
 | |
|             result = val[0] * val[1]
 | |
|         elif value[2] == 'Subtract':
 | |
|             result = val[0] - val[1]
 | |
|         elif value[2] == 'Divide':
 | |
|             if val[1] ==0:
 | |
|                 sg.Popup('Second value can\'t be zero')
 | |
|                 result = 'NA'
 | |
|             else:
 | |
|                 result = round( val[0] / val[1], 3)
 | |
|         window.FindElement('_result_').Update(result)              
 | |
|     else:
 | |
|         break  
 |