Text
-Komponente ist ein Gui-Element (Widget),
mit dem man einen mehrzeiligen Text eingeben und anzeigen kann.width
Breite in Buchstaben height
Höhe in Zeilen state
kann NORMAL
oder DISABLED
sein.undo
Wenn diese Option auf True
gesetzt wird kann man mit STRG+Z rückgängig und mit wiederherstellen machenwrap
Steuert den Umbruch, falls eine Zeile über den rechten Rand hinausragt.
NONE
Kein UmbruchWORD
Umbruch an Wortgrenzen (wenn ein Wort zu lang ist auch innerhalb)CHAR
Umbruch vor dem Buchstaben, der über den Rand ragen würde.xscrollcommand
Wenn man Scrollbalken verwendet, muss der horizontale Scrollbar hier angegeben werden yscrollcommand
Wenn man Scrollbalken verwendet, muss der vertikale Scrollbar hier angegeben werden get(start, ende)
Liefert den Text zwischen start
und ende
zurück (ende
ist optional)."Zeile.Spalte"
angegeben werden.end
verwendet werden (für Zeilenenden oder das Textende).
delete(start, ende)
Löscht den Text zwischen start
und ende
.
insert(pos, string)
Fügt an der Position pos
den Text s
ein."end"
oder "Zeile.Spalte"
eingegeben
set(...)
existiert nicht, hier muss man zuerst mit delete("1.0")
den kompletten Text löschen und dann mit insert("1.0", s)
einfügen.
edit_undo()
Macht die letzte Veränderung des Textes rückgängig.
edit_redo()
Stellt die zuletzt rückgängig gemachte Veränderung wieder her.
from tkinter import *
class Fenster(Tk):
def __init__(self):
Tk.__init__(self)
self.option_add("*Font", "aerial 20")
self.t = Text(self, width=10, height=4, wrap=NONE)
self.t.pack()
self.b = Button(self, text="drück drauf", command=self.click)
self.b.pack()
def click(self): # gibt den Text aus
print(self.t.get("1.0", END))
f = Fenster()
f.mainloop()
Text
-Widgets, sind Scrollbalken hilfreich.Text
-Widget bringt diese jedoch nicht mit,
sondern es müssen zwei Scrollbar
-Widgets erzeugt werden.
Scrollbar
Objekte erzeugen. Eins mit der Option
orient="horizontal"
und eins mit der Option
orient="vertical"
Text
Objekt erzeugen
mit den Optionen
xscrollcommand=scrollx.set
beziehungsweise
yscrollcommand=scrolly.set
scrollx.config(command=self.t.xview)
und
scrolly.config(command=self.t.yview)
scrollx, scrolly
die Scrollbars und self.t
das Text
-Widget sind.
class Fenster(Tk):
def __init__(self):
Tk.__init__(self)
self.option_add("*Font", "aerial 20")
scrollx = Scrollbar(self, orient="horizontal")
scrolly = Scrollbar(self, orient="vertical")
self.t = Text(self, width=10, height=4, wrap=NONE,
xscrollcommand=scrollx.set,
yscrollcommand=scrolly.set
)
scrollx.config(command=self.t.xview)
scrolly.config(command=self.t.yview)
scrolly.pack(fill="y", side=RIGHT)
self.t.pack()
scrollx.pack(fill="x", side=TOP)