Professional Documents
Culture Documents
root = Tk()
class text_editor:
current_open_file = "no_file"
def open_file(self):
result = filedialog.askopenfile(initialdir="/",title="Select
File",filetypes=(("text files",".txt"),("all files","*.*")))
if (result != None):
self.text_area.delete(1.0,END)
for line in result:
self.text_area.insert(END,line)
self.current_open_file = result.name
result.close()
def save_as_file(self):
file = filedialog.asksaveasfile(mode="w", defaultextension=".txt")
if file is None:
return
text2save = self.text_area.get(1.0,END)
self.current_open_file = file.name
file.write(text2save)
file.close()
def save_file(self):
if self.current_open_file == "no_file":
self.save_as_file()
else:
file = open(self.current_open_file, "w")
file.write(self.text_area.get(1.0,END))
def new_file(self,event):
self.text_area.delete(1.0,END)
self.current_open_file = "no_file"
def copy_text(self):
self.text_area.clipboard_clear()
self.text_area.clipboard_append(self.text_area.selection_get())
def cut_text(self):
self.copy_text()
self.text_area.delete("sel.first","sel.last")
def paste_text(self):
self.text_area.insert(INSERT, self.text_area.clipboard_get())
def __init__(self,master):
self.master = master
master.title("Text Editor")
self.text_area = Text(undo = True)
self.text_area.pack(fill=BOTH,expand=1)
self.main_menu=Menu()
self.master.config(menu=self.main_menu)
self.master.bind("<Return>", self.new_file)