Impressum
< Index

Texteditor - das Fenster verbessern und erweitern

Im vorherigen Teil haben wir das Text-Widget einfach in das Fenster gepackt.
Damit wir die Oberfläche erweitern können, ist es sinnvoll das Text-Widget und seine Scrollbalken in einen Frame zu packen.
Hierzu erzeugen wir zuerst ein Frame-Objekt namens editor und fügen editor bei allen Widets (dem Text und den Scrollbalken) als ersten Parameter hinzu.
Jetzt landen die Widgets im Frame. Damit der Frame angezeigt wird packen wir ihn auf das Fenster.
Damit sich das Frame-Objekt beim vergrößern des Fensters anpasst machen wir dies mit: editor.pack(side="bottom", fill=BOTH, expand=True).
Verändertet Code im Konstruktor:
self.fenster = Tk()
        
editor = Frame()
scrollx = Scrollbar(editor, orient="horizontal")
scrolly = Scrollbar(editor, orient="vertical")

self.text = Text(editor, wrap=NONE, xscrollcommand=scrollx.set, yscrollcommand=scrolly.set)
scrollx.config(command=self.text.xview)
scrolly.config(command=self.text.yview)

scrollx.pack(side="bottom", fill=BOTH)
self.text.pack(side="left",expand=True,fill=BOTH)
scrolly.pack(side="right", fill=BOTH)

editor.pack(side="bottom", fill=BOTH, expand=True)

Buttons hinzufügen

Wir erzeugen jetzt im Konstruktor einen zweiten Frame namens buttons.
Auf dem ersten Button soll öffnen stehen und als command erhält er die Methode self.open.
Der zweite Button soll als Text speichern haben und als command die Methode self.save.
Damit der Code läuft müssen wir die Klasse um die Methoden open und save erweitern.
Diese sollen erst mal nichts tun, sie erhalten also nur einen pass Befehl.
Versuchen Sie den Code selbst zu erstellen. Sollte es gar nicht klappen ist hier eine .