Úvod do Tkinter - Okna pro jazyk Python - Postavené na základech 'An Introduction to Tkinter'

Udělátko Text

Udělátko Text zobrazuje text. Nabízí vám zobrazení a editaci textu v mnoha variantách. Podporuje také vkládání obrázků a oken.

Obsah

Kdy Text použít

Udělátko Text použijte, chcete-li zobrazit textové dokumenty, které obsahují čistý nebo formátovaný text (použití nejrůznějších fontů, vložené obrázky a další). Udělátko text může být také použito jako textový editor.

Pojetí

Vložení textu

Vytvoříte-li nový text, je prázdný. Na vložení textu do udělátku používejte metodu insert. Vkládejte text na pozice INSERT nebo END:

from Tkinter import *

root=Tk()
text=Text()
text.pack()

text.insert(END, "ahoj, ")
text.insert(END, "svete")

mainloop() 

Vložení textu s tagem (stylem)

K nově přidávanému textu můžete přidávat tzv. tagy (styly), které určují vlastnosti textu:

from Tkinter import *

root=Tk()
text=Text()
text.pack()

text.tag_config("modre", foreground="blue", underline=1)
text.insert(END, "kliknete zde!", "modre")

text.insert(END, "\n")
text.insert(END, "anebo zde!", "cervene")
text.tag_config("cervene", foreground="red", underline=1, font="Arial 20 bold")

mainloop()  

Vložení tlačítka

Chcete-li vkládat vložené objekty, použijte metody window_create nebo image_create:

def click():
    print "klik"

button = Button(text, text="Klik", command=click)
text.window_create(INSERT, window=button)  

Smazání textu

Chcete-li něco smazat, používejte metodu delete. Takto smažete komplet celý text (maže také všechny vložené obrázky a objekty, ale ne značky):

text.delete(1.0, END)  

Chcete-li smazat jeden znak, případně jeden vložený objekt nebo obrázek, použijte metodu delete s jediným argumentem:

text.delete(INSERT)
text.delete(button)  

Jen pro čtení

Chcete-li změnit udělátko na jen pro čtení, změňte vlastnost state z NORMAL na DISABLED:

text.config(state=NORMAL)
text.delete(1.0, END)
text.insert(END, text)
text.config(state=DISABLED)  

Budete-li chtít nyní v programu vkládat do udělátka další text, budete muset zpětně nastavit vlastnost na NORMAL. Jinak jsou všechna volání insert a delete tiše ignorována.

Přečtení textu

K načtení textu do proměnné použijte metodu get:

obsah = text.get(1.0, END)  

Pozice v textu

Metoda index převádí jakoukoliv pozici jakéhokoli tvaru na formát radka/sloupec. Použijte to, pokud chcete uložit "absolutní" pozici.

index = text.index(index)  

Chcete-li však mít stálý přehled o pozicích určitého slova (slov) - i když dojde k vložení nebo smazání nějakého jiného textu - měli byste používat značky - marks.

text.mark_set("prvniZnacka", index)
text.mark_unset("prvniZnacka")
 

Příklad - sledování změn

Malý návod, jak sledovat, jestli v textu nenastala nějaká změna:

import tkinter,md5
def sifrace(obsah):
    return md5.md5(obsah).digest()

sifraOld = sifrace(text.get(1.0, END))
# vlozeni textu 
# neco ...

sifraNew = sifrace(text.get(1.0, END))
if sifraOld != sifraNew:
    print "Obsah se zmenil!"
    sifraOld=sifraNew
      

Příklad - oblasti s určitým tagem

Následující příklad ukazuje, jak vypsat všechny oblasti s určitým tagem:
oblasti = text.tag_ranges(tag)
for i in range(0, len(oblasti), 2):
    start = oblasti[i]
    stop = oblasti[i+1]
    print tag, repr(text.get(start, stop))  

Příklad - vyhledávání v textu

Metoda search umožňuje vyhledávat v textu. Nabízí se hledání podle přesné shody (default) nebo regulární výrazy ala Tcl (voláno s regexp = True).

text.insert(END, "ahoj, svete")

start = 1.0
while 1:
    pozice = text.search("o", start, stopindex=END)
    if not pozice:
        break
    print pozice
    start = pozice + "+1c"  

Vynecháte-li volbu stopindex, vyhledání se bude stále opakovat.

Koncept

Udělátko Text ukládá a zobrazuje řádky textu.

Tělo textu může obsahovat znaky, značky, vložené okna a obrázky. Různé oblasti se mohou zobrazovat jinak, k oblastem textu se také dají přiřadit události.

Normálně můžete text editovat pomocí klávesnice a myši. Nastavte volbu state na DISABLED a docílíte opak (nejde pak vkládat ani pomocí metody insert).

Pozice

Pozice se používají pro označení míst v textu. Podobně jako pythonovské pozice v seznamech, pozice Textu odpovídají místům mezi dvěma znaky.

Tkinter nabízí následující typy pozic:

Pojmenované pozice

INSERT (nebo "insert") odpovídá aktuální pozici vkládacího kurzoru.

CURRENT (nebo "current") odpovídá znaku nejblíže k myši. Aktualizuje se však pouze při pohybu samotné myši bet tisknutí pravého či levého tlačítka (aktualizace nastane, jakmile tlačítko myši pustíte).

END (nebo "end") odpovídá pozici hned za posledním znakem.

Uživatelsky definovaní značky jsou pojmenované pozice v textu. INSERT a CURRENT jsou předdefinované značky, ale můžete vytvářet také své. Více níže.

Uživatelsky definované tagy reprezentují specielní styly a události, které se mohou k vybranému textu přiřadit. Více níže.

Na začátek oblasti označené tagem se můžete odkazovat pomocí syntaxe "tag.first" (hned před první znak oblasti označené tagem) a "tag.last" (hned za poslední znak oblasti označené tagem).

Výběr je specielní tag jménem SEL (nebo "sel"), který odpovídá aktuálnímu výběru. Při odkazech na výběr použijte konstanty SEL_FIRST a SEL_LAST

Řádky a sloupce

řádka/sloupec jsou základní poziční typ. Zadávají se jako řetězec, který se skládá z čísla řádky a čísla sloupce spojeného tečkou. Čísla řádku začínají na 1, zatímco čísla sloupců začínají na 0. Tyto pozice můžete vytvářet například takto:

"%d.%d" % (radka, sloupec)  

Není chyba zadat čísla řádek nebo sloupců za současným rozmezím. Taková čísla pak odpovídají řádce za poslední řádkou, respektive za posledním znakem řádku.

Všimněte si, že pozice řádka/sloupec vypadají jako desetinná čísla, ale zřídka se dají také zaměnit (zvažte 1.25 vs. 1.3). Výjimku tvoří v tomto smyslu 1.0, které se použít jako zkráceného "1.0".

Metoda index převádí všechny typy indexů do typu řádka/sloupec.

Konce řádků

Konec řádku je pozice, která se zadává ve tvaru "cisloRadku.end" a odpovídá znaku nového řádku na konci každé řádky.

Souřadnice

Můžete také používat pozice typu okenní souřadnice. Při událostech můžete například nalézt nejbližší znak u myši pomocí:

"@%d,%d" % (udalost.x, udalost.y)  

Vložené objekty

Vložená jména objektů se mohou použít k odkazům na okna a obrázky vložené do textu. Chcete-li se odkazovat na okno, použijte jako pozici odpovídající instanci. Chcete-li se odkazovat na obrázek, použijte odpovídající Tkinter instanci PhotoImage nebo BitmapImage.

Výrazy

Výrazy se používají pro modifikace jakéhokoliv typu pozice. Výrazy se skládají z vlastní pozice a jednoho nebo více modifikátorů z následujícího přehledu:

Klíčová slova se mohou zkracovat a mezery vynechávat. Např. "+ 5 chars" se dá zkrátit na "+5c".

"insert -5c" značí 5 znaků před aktuální pozicí
"end -1l" značí začátek posledního řádku
"insert linestart" značí začátek aktuálního řádku
 
Příklad smazání znaku před kurzorem
def backspace(udalost):
 udalost.widget.delete("%s-1c" % INSERT, INSERT)  

Značky

Značky jsou obvykle neviditelné objekty vložené v textu. Značky jsou umístěny mezi znaky textu a posouvají se s celým textem.

Značky jsou obyčejné řetězce, které mohou obsahovat cokoliv kromě mezer. Je však doporučeno používat pouze abecedu plus čísla. K vytvoření nebo přesunu značky slouží metoda mark_set.

Tkinter má dvě zvláštní předdefinované značky:

INSERT (nebo "insert") je speciální značka ukazující na místo, kde je vkládací kurzor. Tato značka není úplně neviditelná, protože kurzor je běžně vidět.

CURRENT (nebo "current") je speciální značka ukazují na místo nejblíže k myši. Aktualizuje se však jen když hýbete s myší a nedržíte přitom žádné myšoidní tlačítko.

Tyto speciální značky se dají ovládat stejně jako jiné, ale nedají se smazat.

Smažete-li nebo vložíte-li text před značku, značka se přesune společně s ostatním textem. Ke smazání značky použijte metodu mark_unset. Smazání okolního textu nemaže automaticky samotnou značku.

Vložíte-li na značku text, značka se posune vpravo nebo vlevo v závislosti na nastavené přitažlivosti - gravity - (LEFT nebo RIGHT; default je RIGHT). Na změnu přitažlivosti u jednotlivé značky použijte metodu mark_gravity.

V následujícím příkladu je značka "sentinel" použita, aby uchovala původní pozici vkládacího kurzoru:

text.mark_set("sentinel", INSERT)
text.mark_gravity("sentinel", LEFT)  

Nyní můžete nechat uživatele vepsat text na místě vkládacího kurzoru a následně použít text.get(sentinel, INSERT), chcete li se dozvědět, co napsal.

Tagy

Tagy se požívají, pokud chcete používat styly písma (známé například z textových editorů Word, OpenOffice) a/nebo volání událostí na příslušném textu.

Uživatelských tagů můžete mít libovolně mnoho. Každý text může mít přičleněno několik tagů a stejný tag se může použít na více místech. Narozdíl od udělátka Canvas, tagy v udělátku Text nezmizí, pokud nebude existovat žádný text, který je bude používat.

Jména tagů jsou obyčejné řetězce, které mohou obsahovat cokoliv mimo mezer.

SEL (nebo "sel") je speciální tag, který odpovídá aktuálnímu výběru. Tag výběru by se měl v textu objevovat maximálně jednou.

Následující volby se používají s metodou tag_config k určení "jak bude písmo vypadat", které bude označeno příslušným tagem:

background (barva)

Barva pozadí pro tento tag. Poznámka: bg není background ve spojení s tagem.

bgstipple (bitmapa)

Jméno bitmapy, které se použije pro vykreslení pozadí. Obvyklé bitmapy jsou: "gray12", "gray25", "gray50" nebo "gray75". Default je solid brush (žádná bitmapa).

borderwidth (vzdálenost)

Šířka okraje textu. Standard je 0 (bez okraje). Poznámka: bd není borderwitdth.

fgstipple (bitmapa)

Jméno bitmapy, která se použije pro vykreslení textu. Obvyklé bitmapy jsou: "gray12", "gray25", "gray50" nebo "gray75". Default je solid brush (žádná bitmapa).

font (font)

Font, který se použije pro tento tag. Například 20 tučně arial je: "Arial 20 bold".

foreground (barva)

Barva tohoto tagu. Poznámka: fg není foreground.

justify (konstanta)

Řídí zarovnávání textu. První znak řádky určuje, jak bude zarovnána celá řádka. LEFT, RIGHT nebo CENTER. Standard je LEFT.

lmargin1 (distance)

Levý okraj pro první řádku bloku textu s daným tagem. Standard je 0 (bez okraje).

lmargin2 (distance)

Levý okraj pro všechny řádky kromě první bloku textu s daným tagem. Standard je 0 (bez okraje).

offset (distance)

Řídí, jestli bude text pozdvižen nebo ponížen oproti základní lince. Kladná čísla značí Horní index, záporná Dolní. Standard je 0 (bez offsetu).

overstrike (flag)

Text je přeškrtnut, je-li flag nenulový. Je lepší však používat přeškrtávání na úrovni fontu.

relief (constant)

Ohraničení textu. Použijte SUNKEN, RAISED, GROOVE, RIDGE nebo FLAT. Standard je FLAT (bez ohraničení).

rmargin (distance)

Pravý okraj. Standard je 0 (bez pravého okraje).

spacing1 (distance)

Mezera nad prvním řádkem. Standard je 0 (žádné odsazení).

spacing2 (distance)

Mezera mezi řádky bloku textu s daným tagem. Standard je 0.

spacing3 (distance)

Mezera pod poslední řádkou bloku textu. Standard je 0.

tabs (string)
underline (flag)

Text bude podtržen, pokud hodnota flagu bude nenulová. Například klasický odkaz docílíte pomocí (foreground="blue", underline=1). Nejlepší výsledky však dosáhnete spíše pomocí volby font.

wrap (constant)

Zarovnávání textu. NONE, CHAR nebo WORD.

Připojíte-li k textu několik tagů, platí pravidla, že poslední přepíše předchozí. V následujícím příkladu bude modrý text na žlutém pozadí:

text.tag_config("n", background="yellow", foreground="red", font="Arial 20")
text.tag_config("a", foreground="blue")
text.insert(END, "ahoj", ("n", "a"))  

Nezáleží na pořadí tagů v tag_insert, ale na pořadí, v jakém se uvádějí tag_config. Změnit priority tagů můžete však pomocí tag_raise a tag_lower. Text bude červený, přidáte-li text.tag_lower("a") k příkladu uvedenému výše.

Metoda tag_bind vám umožňuje svázat událost s textem majícím patřičný tag. Tagy mohou přijímat události od myši i klávesnice včetně událostí Enter a Leave. Následující příklad vytváří klasický hypertextový odkaz se vším všudy:

from Tkinter import *

def click(udalost):
    print "Klik!"

def show_hand_cursor(event):
    event.widget.configure(cursor="hand1")
def show_arrow_cursor(event):
    event.widget.configure(cursor="")

root=Tk()
text=Text()
text.pack()

text.tag_config("a", foreground="blue", underline=1)
text.tag_bind("a", "<Enter>", show_hand_cursor)
text.tag_bind("a", "<Leave>", show_arrow_cursor)
text.tag_bind("a", "<Button-1>", click)
text.config(cursor="arrow")
text.insert(INSERT, "Klikni na me!", "a")

mainloop()
 

Složitější příklady s použitím tagů

Referenční příručka

Text(master=None, **options) (class) [#]

Udělátko pro zobrazování a editaci textu.

master
Rodič.
**options
Parametry udělátka. Podívej se na metodu config pro všechny dostupné parametry.
bbox(index) [#]

Počítá ohraničující box daného znaku.

Tato metoda je funkční pouze, když je udělátko aktualizováno. Buďte si jistí a použijte metodu update_idletasks.

index
Pozice znaku.
Vrací:
Čtveřici (x, y, šířka, výška) nebo None, pokud se znak nenajde.
compare(index1, op, index2) [#]

Porovnává dvě pozice. Parametr op může být "<", "<=", "==", ">=", ">" nebo "!=" (Pythonovské "<>" není podporováno).

index1
První pozice.
op
Operátor (výše).
index2
Druhá pozice.
Vrací:
True, pokud je pravda.
config(**options) [#]

Upravuje jeden nebo více parametrů udělátka. Vrací aktuální nastavení ve formě slovníku, pokud je volána bez parametrů.

**options
Parametry udělátka.
autoseparators=
Standard je 1. (autoSeparators/AutoSeparators)
background=
Standardní nastavení závisí na systému. (databázové jméno je background, třída je Background)
bg=
Stejné jako background.
borderwidth=
Standardní hodnota je 2. (borderWidth/BorderWidth)
bd=
Stejné jako borderwidth.
cursor=
Standardní hodnota je "xterm". (cursor/Cursor)
exportselection=
Standardní hodnota je 1. (exportSelection/ExportSelection)
font=Standardní nastavení závisí na systému.
(font/Font)
foreground=Standardní nastavení závisí na systému.
(foreground/Foreground)
fg=
Stejné jako foreground.
height=
Standardní hodnota je 24. (height/Height)
highlightbackground=Standardní nastavení závisí na systému.
(highlightBackground/HighlightBackground)
highlightcolor=Standardní nastavení závisí na systému.
(highlightColor/HighlightColor)
highlightthickness=
Standardní hodnota je 0. (highlightThickness/HighlightThickness)
insertbackground=Standardní nastavení závisí na systému.
(insertBackground/Foreground)
insertborderwidth=
Standardní hodnota je 0. (insertBorderWidth/BorderWidth)
insertofftime=
Standardní hodnota je 300. (insertOffTime/OffTime)
insertontime=
Standardní hodnota je 600. (insertOnTime/OnTime)
insertwidth=
Standardní hodnota je 2. (insertWidth/InsertWidth)
maxundo=
Standard je 0. (maxUndo/MaxUndo)
padx=
Standardní hodnota je 1. (padX/Pad)
pady=
Standardní hodnota je 1. (padY/Pad)
relief=
Standardní hodnota je SUNKEN. (relief/Relief)
selectbackground=Standardní nastavení závisí na systému.
(selectBackground/Foreground)
selectborderwidth=
Standardní hodnota je 0. (selectBorderWidth/BorderWidth)
selectforeground=Standardní nastavení závisí na systému.
(selectForeground/Background)
setgrid=
Standardní hodnota je 0. (setGrid/SetGrid)
spacing1=
Standardní hodnota je 0. (spacing1/Spacing)
spacing2=
Standardní hodnota je 0. (spacing2/Spacing)
spacing3=
Standardní hodnota je 0. (spacing3/Spacing)
state=
Standardní hodnota je NORMAL. (state/State)
tabs=
Bez standardního nastavení. (tabs/Tabs)
takefocus=
Bez standardního nastavení. (takeFocus/TakeFocus)
undo=
Standard je 0. (undo/Undo)
width=
Standardní hodnota je 80. (width/Width)
wrap=
Standardní hodnota je CHAR. (wrap/Wrap)
xscrollcommand=
Bez standardního nastavení. (xScrollCommand/ScrollCommand)
yscrollcommand=
Bez standardního nastavení. (yScrollCommand/ScrollCommand)
debug(boolean=None) [#]

Zapíná nebo vypíná ladění.

boolean
delete(start, end=None) [#]

Maže znak (nebo vložený objekt) na dané pozici nebo celý text v daném rozsahu.

start
Startovací pozice.
end
Konečná pozice. Je-li vynechána, bude smazán jeden znak.
dlineinfo(index) [#]

Počítá ohraničující box řádky pro daný znak.

Tato metoda je funkční pouze, když je udělátko aktualizováno. Buďte si jistí a použijte metodu update_idletasks.
index
Pozice znaku.
Vrací:
Pětice: (x, y, šířka, výška, offset). Poslední člen offset se bere od vršku řádky k jejímu spodku. Pokud řádka je neviditelná, metoda vrací None.
dump(index1, index2=None, command=None, **kw) [#]

Výpis obsahu udělátka.

edit_modified(arg=None) [#]

Metoda edit_modified.

edit_redo() [#]

Metoda edit_redo.

edit_reset() [#]

Metoda edit_reset.

edit_separator() [#]

Metoda edit_separator.

edit_undo() [#]

Metoda edit_undo.

get(start, end=None) [#]

Vrací znak na dané pozici nebo celý text v daném rozsahu.

start
Startovní pozice.
end
Konečná pozice. Je-li vynechána, vrací jeden znak.
image_cget(index, option) [#]

Vrací aktuální hodnotu daného parametru. Pokud na dané pozici žádný obrázek není, je vyvolána výjimka TclError.

index
Pozice.
option
Parametr obrázku.
Vrací:
Hodnota parametru.
image_configure(index, **options) [#]

Mění jeden nebo více parametrů. Není-li na pozici žádný obrázek, je vyvolána výjimka TclError.

index
Pozice.
**options
Parametry obrázku.
align=
image=
Obrázek. PhotoImage nebo BitmapImage objekt nebo kompatibilní.
name=
padx=
pady=
image_create(index, cnf={}, **kw) [#]

Vkládá obrázek na danou pozici. Obrázek musí být PhotoImage nebo BitmapImage instance (nebo instance odpovídající třídy PIL).

Tato metoda nefunguje v Tk níže něž 8.0. Obejít se dá vložením obrázku do udělátka Label a použitím window_create.

index
Pozice.
**options
Parametry obrázku. Více v image_config.
image_names() [#]

Hledá jména všech obrázků v textovém udělátku. Tkinter neumožňuje vracet odpovídající objekty PhotoImage a BitmapImage, nicméně můžete si je uchovávat ve slovníku, při použití str(image) jako klíče.

Vrací:
N-tici obsahující jména obrázků.
index(index) [#]

Vrací pozici ve tvaru "řádka.sloupec" z jakéhokoliv typu dané pozice.

index
Pozice.
Vrací:
Odpovídající řádka/sloupec, předaný jako řetězec "radka.sloupec".
insert(index, text, *tags) [#]

Vkládá text na danou pozici. Pozice je typicky INSERT nebo END. Předáte-li jeden nebo více tagů, budou přilípnuty k novému textu.

Vložíte-li text na značku, bude značka posunuta podle nastavení gravity.

index
Kam vložit text.
text
Text ke vložení.
*tags
Volitelné tagy připojené k textu.
mark_gravity(self, name, direction=None) [#]

Nastavuje přitažlivost (gravity) pro danou značku. Přitažlivost řídí, jak posunout značku, když je text vložen právě na značku. Značka zůstane na místě, pokud je gravity LEFT (text se vloží za značku). Značka se posune vpravo na konec vkládaného textu, pokud je gravity RIGHT (text se vloží před značku). Standard je RIGHT.

name
Jméno značky.
direction
Nastavení přitažlivosti (LEFT nebo RIGHT). Je-li vynecháno, metoda vrací současné nastavení.
Vrací:
SOučasné nastavení, pokud je vynechán parametr.
mark_names() [#]

Najde všechny značky v udělátku. Zahrnuje i INSERT a CURRENT, ale ne END, který je speciální pozice, ne značka.

Vrací:
N-tice obsahující jména značek.
mark_next(index) [#]

Metoda mark_next.

index
mark_previous(index) [#]

Metoda mark_previous.

index
mark_set(name, index) [#]

Posune značku na danou pozici. Pokud značka neexistuje, je vytvořena s přitažlivostí RIGHT. Používejte tuto metodu i pro změnu aktuální pozice značek INSERT a CURRENT.

name
Jméno značky.
index
Nová pozice.
mark_unset(name) [#]

Odstraní značku. Značky INSERT a CURRENT se odstranit nedají.

name
Jméno značky.
scan_dragto(x, y) [#]

Roluje obsah udělátka. Text je posunut 10x více, než je vzdálenost mezi zarážkou a novou pozicí.

x
y
scan_mark(x, y) [#]

Nastavuje zarážku. Je používána pro rychlé rolování.

x
y
search(pattern, index, stopindex=None, forwards=None, backwards=None, exact=None, regexp=None, nocase=None, count=None) [#]

Hledá řetězce nebo regulární výrazy.

pattern
index
stopindex
forwards
backwards
exact
regexp
nocase
count
see(index) [#]

Zajistí, aby daná pozice byla viditelná. Pokud není, bude rolováno, aby byla vidět.

index
Pozice.
tag_add(tagName, index1, *args) [#]

Metoda tag_add.

tagName
index1
*args
tag_bind(tagName, sequence, func, add=None) [#]

Metoda tag_bind.

tagName
sequence
func
add
tag_cget(tagName, option) [#]

Metoda tag_cget.

tagName
option
tag_config(tagName, cnf={}, **kw) [#]

Metoda tag_config.

tagName
cnf
**kw
tag_configure(tagName, cnf={}, **kw) [#]

Metoda tag_configure.

tagName
cnf
**kw
tag_delete(*tagNames) [#]

Metoda tag_delete.

*tagNames
tag_lower(tagName, belowThis=None) [#]

Metoda tag_lower.

tagName
belowThis
tag_names(index=None) [#]

Metoda tag_names.

index
tag_nextrange(tagName, index1, index2=None) [#]

Metoda tag_nextrange.

tagName
index1
index2
tag_prevrange(tagName, index1, index2=None) [#]

Metoda tag_prevrange.

tagName
index1
index2
tag_raise(tagName, aboveThis=None) [#]

Metoda tag_raise.

tagName
aboveThis
tag_ranges(tagName) [#]

Metoda tag_ranges.

tagName
tag_remove(tagName, index1, index2=None) [#]

Metoda tag_remove.

tagName
index1
index2
tag_unbind(tagName, sequence, funcid=None) [#]

Metoda tag_unbind.

tagName
sequence
funcid
window_cget(index, option) [#]

Vrací současnou hodnotu daného okenního parametru. Pokud nic takového neexistuje, vrací výjimku TclError.

index
option
window_config(index, **options) [#]

Mění jednu nebo více okenního parametrů. Pokud nic takového neexistuje, vrací výjimku TclError.

index
**options
align=
create=
padx=
pady=
stretch=
window=
Window object.
window_configure(index, cnf=None, **kw) [#]

Stejné jako window_config.

window_create(index, **options) [#]

Vkládá udělátko na danou pozici. Můžete buď nejprve vytvořit udělátko, které by mělo být potomkem samotného textového udělátka, a vložit ho pomocí window nebo poskytnout zpětné volání create, které bude zavoláno, když bude okno poprvé zobrazeno.

index
Pozice.
**options
Parametry okna. Více viz window_config.
window_names() [#]

Vrací n-tici, obsahující všechna vložená okna.

Ukázkový příklad, jak převést jména na seznam instancí udělátek:

windows = text.window_names()
try:
    windows = map(text.nametowidget, windows)
except TclError:
    pass  
Vrací:
Seznam jmen oken.
xview(*what) [#]

Metoda xview.

*what
xview_moveto(fraction) [#]

Metoda xview_moveto.

fraction
xview_scroll(number, what) [#]

Metoda xview_scroll.

number
what
yview(*what) [#]

Metoda yview.

*what
yview_moveto(fraction) [#]

Metoda yview_moveto.

fraction
yview_pickplace(*what) [#]

Metoda yview_pickplace.

*what
yview_scroll(number, what) [#]

Metoda yview_scroll.

number
what

Přeložil a upravil - geon - Copyright © 2007 TkinterCZ - GNU Free Documentation License 1.2