Advertisement
skip420

DataEntry1

Sep 26th, 2022
1,011
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.48 KB | None | 0 0
  1. # sudo apt-get install python-tk
  2. # sudo apt-get install python3-tk
  3.  
  4.  
  5.  
  6. import PySimpleGUI as sg
  7. import pandas as pd
  8.  
  9. # Add some color to the window
  10. sg.theme('DarkTeal9')
  11.  
  12. EXCEL_FILE = 'Data_Entry.xlsx'
  13. df = pd.read_excel(EXCEL_FILE)
  14.  
  15. layout = [
  16.     [sg.Text('Please fill out the following fields:')],
  17.     [sg.Text('Name', size=(15,1)), sg.InputText(key='Name')],
  18.     [sg.Text('City', size=(15,1)), sg.InputText(key='City')],
  19.     [sg.Text('Favorite Color', size=(15,1)), sg.Combo(['Green', 'Blue', 'Red'], key='Favorite Color')],
  20.     [sg.Text('I speak', size=(15,1)),
  21.                             sg.Checkbox('German', key='German'),
  22.                             sg.Checkbox('Spanish', key='Spanish'),
  23.                             sg.Checkbox('English', key='English')],
  24.     [sg.Text('No. of Children', size=(15,1)), sg.Spin([i for i in range(0,16)],
  25.                                                        initial_value=0, key='Children')],
  26.     [sg.Submit(), sg.Button('Clear'), sg.Exit()]
  27. ]
  28.  
  29. window = sg.Window('Simple data entry form', layout)
  30.  
  31. def clear_input():
  32.     for key in values:
  33.         window[key]('')
  34.     return None
  35.  
  36.  
  37. while True:
  38.     event, values = window.read()
  39.     if event == sg.WIN_CLOSED or event == 'Exit':
  40.         break
  41.     if event == 'Clear':
  42.         clear_input()
  43.     if event == 'Submit':
  44.         df = df.append(values, ignore_index=True)
  45.         df.to_excel(EXCEL_FILE, index=False)
  46.         sg.popup('Data saved!')
  47.         clear_input()
  48. window.close()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement