====== Beispiele: Erstellung eines Editors ====== # -------------------------- # Dateiname: editor1.pyw # Ganz einfacher Texteditor # -------------------------- from tkinter import * class Editor(object): def __init__(self): self.fenster=Tk() self.fenster.title("Unser Texteditor") self.text=Text(self.fenster, width=80,height=30, wrap=WORD, font=('ARIAL',10)) self.text.pack() self.fenster.mainloop() editor = Editor() # -------------------------- # Dateiname: editor2.pyw # Ganz einfacher Texteditor # -------------------------- from tkinter import * class Editor(object): def __init__(self): self.fenster=Tk() self.fenster.title("Unser Texteditor") self.scrollbar=Scrollbar(self.fenster) self.scrollbar.pack(side=RIGHT,fill=Y) self.text=Text(self.fenster, width=40,height=10, wrap=WORD, font=('ARIAL',10), yscrollcommand=self.scrollbar.set) self.text.pack() self.scrollbar.config(command=self.text.yview) self.fenster.mainloop() editor = Editor() # -------------------------- # Dateiname: editor3.pyw # Ganz einfacher Texteditor # -------------------------- from tkinter import * class Editor(object): def __init__(self): self.fenster=Tk() self.fenster.title("Unser Texteditor") # Textfeld mit Scrollbar self.scrollbar=Scrollbar(self.fenster) self.scrollbar.pack(side=RIGHT,fill=Y) self.text=Text(self.fenster, width=40,height=10, wrap=WORD, font=('ARIAL',10), yscrollcommand=self.scrollbar.set) self.text.pack() self.scrollbar.config(command=self.text.yview) # MenĂ¼ self.__addMenueleiste() self.__addFormatmenue() self.fenster.mainloop() def __addMenueleiste(self): self.menueleiste=Menu(self.fenster) self.fenster.config(menu=self.menueleiste) def __addFormatmenue(self): self.formatmenue=Menu(master=self.menueleiste) self.schrifttyp=StringVar() self.menueleiste.add_cascade(label="Schrifttyp", menu=self.formatmenue) self.formatmenue.add_radiobutton(label="Arial", variable=self.schrifttyp, value="Arial", command=self.formatieren) self.formatmenue.add_radiobutton(label="Courier", variable=self.schrifttyp, value="Courier", command=self.formatieren) self.formatmenue.add_radiobutton(label="Times", variable=self.schrifttyp, value="Times", command=self.formatieren) def formatieren(self): schrifttyp=self.schrifttyp.get() self.text.config(font=(schrifttyp,10)) editor = Editor() # -------------------------- # Dateiname: editor4.pyw # Ganz einfacher Texteditor # -------------------------- from tkinter import * class Editor(object): def __init__(self): self.fenster=Tk() self.fenster.title("Unser Texteditor") # Textfeld mit Scrollbar self.scrollbar=Scrollbar(self.fenster) self.scrollbar.pack(side=RIGHT,fill=Y) self.text=Text(self.fenster, width=40,height=10, wrap=WORD, font=('ARIAL',10), yscrollcommand=self.scrollbar.set) self.text.pack() self.scrollbar.config(command=self.text.yview) # MenĂ¼ self.__addMenueleiste() self.__addDateimenue() self.__addFormatmenue() self.fenster.mainloop() def __addMenueleiste(self): self.menueleiste=Menu(self.fenster) self.fenster.config(menu=self.menueleiste) def __addFormatmenue(self): self.formatmenue=Menu(master=self.menueleiste) self.menueleiste.add_cascade(label="Schrifttyp", menu=self.formatmenue) self.schrifttyp=StringVar() self.formatmenue.add_radiobutton(label="Arial", variable=self.schrifttyp, value="Arial", command=self.formatieren) self.formatmenue.add_radiobutton(label="Courier", variable=self.schrifttyp, value="Courier", command=self.formatieren) self.formatmenue.add_radiobutton(label="Times", variable=self.schrifttyp, value="Times", command=self.formatieren) def __addDateimenue(self): self.dateimenue=Menu(master=self.menueleiste) self.menueleiste.add_cascade(label="Datei", menu=self.dateimenue) self.dateimenue.add_command(label="Laden", command=self.laden) self.dateimenue.add_command(label="Speichern", command=self.speichern) self.dateimenue.add_separator() self.dateimenue.add_command(label="Ende", command=self.beenden) def formatieren(self): schrifttyp=self.schrifttyp.get() self.text.config(font=(schrifttyp,10)) def laden(self): self.datei=filedialog.askopenfile() if self.datei: self.text.delete(1.0,END) self.text.insert(1.0,self.datei.read()) self.datei.close() def speichern(self): self.datei=filedialog.asksaveasfile() if self.datei: self.datei.write(self.text.get(1.0,END)) self.datei.close() def beenden(self): if messagebox.askyesno("Beenden", "Wollen Sie wirklich das Programm beenden?"): self.fenster.destroy() editor = Editor()