I used python tkinter module to create notes gui i added widgets to create view and delete notes but I’m unable to edit my notes can anybody help me with this
import os
def delete3():
screen4.destroy()
def delete4():
screen5.destroy()
def saved():
screen_c=Toplevel(screen)
screen_c.title("saved")
screen_c.geometry("100x100")
Label(screen_c,text='saved').pack()
def save():
filename = raw_filename.get()
notes = raw_notes.get()
data = open(filename,"w")
data.write(notes)
data.close()
saved()
def create_notes():
global raw_filename
raw_filename = StringVar()
global raw_notes
raw_notes = StringVar()
screen_b=Toplevel(screen)
screen_b.title("Info")
screen_b.geometry("300x250")
Label(screen_b,text='Enter a filename for note').pack()
Entry(screen_b,textvariable=raw_filename).pack()
Label(screen_b,text='whats on your mind').pack()
Entry(screen_b,textvariable=raw_notes).pack()
Button(screen_b,text="save file",command=save).pack()
def view_notes1():
filename1=raw_filename1.get()
data =open(filename1,'r')
data1=data.read()
screen_e=Toplevel(screen)
screen_e.title("notes")
screen_e.geometry("400x400")
Label(screen_e,text=data1).pack()
def view_notes():
screen_d=Toplevel(screen)
screen_d.title("info")
screen_d.geometry("250x250")
all_files = os.listdir()
Label(screen_d,text = "use one of the files below").pack()
Label(screen_d,text = all_files).pack()
global raw_filename1
raw_filename1 = StringVar()
Entry(screen_d,textvariable=raw_filename1).pack()
Button(screen_d,command=view_notes1,text ="ok").pack()
def del_notes1():
filename3=raw_filename2.get()
os.remove(filename3)
screen_g=Toplevel(screen)
screen_g.title("notes")
screen_g.geometry("400x400")
Label(screen_g,text=filename3+ ' removed successfully').pack()
def delete_notes():
screen_f=Toplevel(screen)
screen_f.title("delete")
screen_f.geometry("250x250")
all_files = os.listdir()
Label(screen_f,text = "choose one of the files below to delete").pack()
Label(screen_f,text = all_files).pack()
global raw_filename2
raw_filename2 = StringVar()
Entry(screen_f,textvariable=raw_filename2).pack()
Button(screen_f,command=del_notes1,text ="ok").pack()
def session():
screen_a=Toplevel(screen)
screen_a.title("dashboard")
screen_a.geometry("400x400")
Label(screen_a,text="welcome to the dashboard")
Button(screen_a,text="create a note",command=create_notes).pack()
Button(screen_a,text="view notes",command=view_notes).pack()
Button(screen_a,text="delete note",command = delete_notes).pack()
def login_successs():
session()
def password_is_wrong():
global screen4
screen4=Toplevel(screen)
screen4.title("wrong password")
screen4.geometry("150x100")
Label(screen4,text="password is wrong").pack()
Button(screen4,text="ok",command=delete3).pack()
def user_not_found():
global screen5
screen5=Toplevel(screen)
screen5.title("user not found")
screen5.geometry("150x100")
Label(screen5,text="wrong username").pack()
Button(screen5,text="ok",command=delete4).pack()
def register_user():
username_info= username.get()
password_info= password.get()
file =open(username_info,"w")
file.write(username_info+'\n')
file.write(password_info)
file.close()
username_entry.delete(0,END)
password_entry.delete(0,END)
Label(screen1, text= "registration successful",fg='green',font=('calibri',12)).pack()
def login_verify():
username1=username_verify.get()
password1=password_verify.get()
username_entry1.delete(0,END)
password_entry1.delete(0,END)
global username_entry
global password_entry
list_of_files = os.listdir()
if username1 in list_of_files:
file1 = open(username1, "r")
verify=file1.read().splitlines()
if password1 in verify:
login_successs()
else:
password_is_wrong()
else:
user_not_found()
def register():
global screen1
screen1=Toplevel(screen)
screen1.title("register")
screen1.geometry('300x250')
global username
global password
global password_entry
global username_entry
username = StringVar()
password = StringVar()
Label(screen1, text = "SigmaMail register\nplease enterv your details ").pack()
Label(screen1, text = "").pack()
Label(screen1, text= 'username').pack()
username_entry= Entry(screen1, textvariable= username)
username_entry.pack()
Label(screen1, text="passswod").pack()
password_entry = Entry(screen1, textvariable=password)
password_entry.pack()
Label(screen1, text="").pack()
Button(screen1, text="Register",width=10,height=1,command=register_user).pack()
def login():
global screen2
screen2=Toplevel(screen)
screen2.title=login
screen2.geometry('300x250')
Label(screen2,text='please enter login detalis' ).pack()
Label(screen2,text="").pack()
global username_verify
global password_verify
global username_entry1
global password_entry1
username_verify= StringVar()
password_verify=StringVar()
Label(screen2,text="username *").pack()
username_entry1= Entry(screen2,textvariable=username_verify)
username_entry1.pack()
Label(screen2,text="").pack()
Label(screen2,text="password *").pack()
password_entry1=Entry(screen2,textvariable=password_verify)
password_entry1.pack()
Label(screen2,text="").pack()
Button(screen2,text='login',width=300,height=1,command=login_verify).pack()
def main_screen():
global screen
screen =Tk()
screen.geometry("300x250")
screen.title("SigaMail")
Label(text='SigaMail',bg='grey',width='300',height='2', font=("calibri",13)).pack()
Label(text="").pack()
Button(text='login',height = '2',width='35',command=login).pack()
Label(text="").pack()
Button(text='register',height='2',width='30',command=register).pack()
screen.mainloop()
main_screen()```