47 lines
1.7 KiB
Plaintext
47 lines
1.7 KiB
Plaintext
import PySimpleGUI as GUI
|
|
import csv
|
|
GUI.set_options(font='Arial 15')
|
|
|
|
layout = [
|
|
[GUI.Text("First Name"), GUI.Push(), GUI.InputText(key='-fname-')],
|
|
[GUI.Text("Last Name"), GUI.Push(), GUI.InputText(key='-lname-')],
|
|
[GUI.Text("Phone Number"), GUI.Push(), GUI.InputText(key='-phone-')],
|
|
[GUI.Text("Priority Level"), GUI.Push(), GUI.InputText(key='-PrLvl-')],
|
|
[GUI.Button("Save")],
|
|
[GUI.Text("LegacySearch by Last Name"),GUI.Push(),GUI.InputText(key='-Search-'),GUI.Button('Search')],
|
|
[GUI.Text(key='-SearchOutput-')]
|
|
]
|
|
window = GUI.Window("Contact Book", layout)
|
|
#The While True loop is considered essential
|
|
while True:
|
|
event, values = window.read()
|
|
if event == GUI.WIN_CLOSED:
|
|
print("GoodBye!")
|
|
break
|
|
#If that's not the case
|
|
UserFirstName = values['-fname-']
|
|
UserLastName = values['-lname-']
|
|
UserPhoneNumber = values['-phone-']
|
|
Priority = values['-PrLvl-']
|
|
info = [UserFirstName, UserLastName, UserPhoneNumber, Priority]
|
|
#If the user wishes to save
|
|
if event == "Save":
|
|
with open("info.csv", 'a', newline="") as w:
|
|
csv.writer(w).writerow(info)
|
|
print(info)
|
|
#Now that your friend's info is saved locally,
|
|
#Clear the fields
|
|
window['-fname-'].update('')
|
|
window['-lname-'].update('')
|
|
window['-phone-'].update('')
|
|
window['-PrLvl-'].update('')
|
|
|
|
SearchKeyWord = values['-Search-']
|
|
if event == 'Search':
|
|
with open("info.csv", 'r') as r:
|
|
FileReader = csv.reader(r)
|
|
for i in FileReader:
|
|
if SearchKeyWord in i[1]:
|
|
NewInfo = f"First Name:{i[0]}\nLast Name:{i[1]}\nPhone Number:{i[2]}\nPriority Level / Importance:{i[3]}\n"
|
|
#Reusing window[obj].update(value) to update the empty label -SearchOutput-
|
|
window['-SearchOutput-'].update(NewInfo) |