Está en la página 1de 134

Tkinter 8,5 referencia: una interfaz grfica de usuario (GUI) para Python

John W. Shipman
2013-06-24 12:46
resumen
describe las Tkinter widget para construir interfaces grficas de usuario (GUI) en
el lenguaje de programacin Python. Incluye la cobertura temtica de la ttk widgets
.
1 Esta publicacin est disponible en formulario de la Web y tambin como un
documento PDF 2 . Por favor, Haga llegar cualquier comentario totcc-doc@nmt.edu
.
Tabla de contenidos
1. Una cruz-plataforma interfaz grfica de usuario generador de Python ... ... ...
... ... ... ... .. 3 2. Una aplicacin mnimo ... ... ... ... ... 4 3. Deinitions .
.. ... ... ... ... ... 5 4. Gestin de Diseo ... ... ... ... ... ... ... 5 4.1 . El
grid() mtodo ... ... ... ... 6 4.2 . Otros mtodos de gestin ... ... ... ... ... ..
. ... 7 4.3 . Columna y fila Coniguring tamaos ... ... ... ... ... ... 7 4.4 . La
ventana raz resizeable ... ... ... ... ... ... 8 5. Atributos estndar ... ... 9 5
.1 . Dimensiones ... ... ... ... ... ... ... 9 5.2 . El sistema de coordenadas .
.. ... ... ... ... ... ... 10 5.3 . Colores ... ... ... ... ... .. 10 5.4 . Fuen
tes de Tipo ... ... ... ... ... ... ... 10 5.5 . Los anclajes. 12 5.6 . Estilos
de ... ... ... ... 12 5.7 . Mapas ... ... ... ... ... ... ... 12 5.8 . Cursores
... ... ... ... ... ... ... 13 5.9 . Imgenes ... ... ... ... ... ... ... 14 5.10
. Geometra cadenas ... ... ... ... ... ... ... ... 15 5.11 . Los nombres de las v
entanas ... ... ... ... ... ... ... ... 16 5.12 . Estilos de combinacin y ... ...
... ... ... ... ... ... 16 5.13 . Dash patrones ... ... ... ... ... ... ... 17
5.14 . Stipple patrones coincidentes ... ... ... ... ... ... ... ... 17 6. Manej
o de excepciones ... ... ... ... ... ... ... 18 7. Elbotn widget ... ... ... ...
... ... ... 18 8. Widget TheCanvas ... ... ... ... ... ... ... 20 8.1 .Lienzo la
s coordenadas ... ... ... ... ... ... ... ... 22 8.2 . TheCanvas lista de visual
izacin ... ... ... ... ... ... ... 22 8.3 .objeto Canvas id ... ... ... ... ... .
.. ... ... 22
1 2 http://www.nmt.edu/tcc/help/pubs/tkinter/ http://www.nmt.edu/tcc/help/pubs/t
kinter/tkinter.pdf
Nuevo Mxico Tech Computer Center Tkinter 8,5

8,4 1 referencia .Lienzo etiquetas ... ... ... ... ... ... ... 22 8.5 .Canvastag
OrId argumentos ... ... ... ... ... ... . 22 8.6 . Mtodos onCanvas widgets ... ..
. ... ... ... ... ... ... 22 8.7 .Lienzo objetos de arco ... ... ... ... ... ...
28 8.8 .Lienzo objetos bitmap ... ... ... ... ... ... ... 29 8.9 .Lienzo objeto
s de imagen ... ... ... ... ... ... ... . 30 8.10 .Lienzo objetos de lnea ... ...
... ... 30 8.11 .Lienzo oval objetos ... ... ... ... ... ... 32 8.12 .Lienzo ob
jetos de polgono ... ... ... ... ... ... ... ... 33 8.13 .Lienzo objetos de rectng
ulo ... ... ... ... ... ... 35 8,14 .Lienzo objetos de texto ... ... ... ... 37
8.15 .Lienzo objetos window ... ... ... ... ... ... ... ... 38 9. Widget TheChec
kbutton ... ... ... ... ... ... 38 10. El widget ... ... ... ... ... ... ... 41
10.1 . Desplazarse un widget ... ... ... ... ... ... 45 10.2 . Agregar validacin
a un widget ... ... ... ... ... ... ... ... 45 11. Widget delrespaldo ... ... ..
. ... ... ... ... 47 12. Widget TheLabel ... ... ... ... ... ... ... 48 13. Widg
et TheLabelFrame ... ... ... ... ... ... 50 14. Widget TheListbox ... ... ... ..
. ... ... ... 52 14.1 . Widget aListbox Desplazamiento ... ... ... ... ... .. 56
15. El men widget ... ... 56 15.1 .elemento de men creacin (coption ) opciones ...
... ... ... ... ... ... ... 59 15.2 . Mens de nivel superior ... ... ... ... ...
... 60 16. Widget TheMenubutton ... ... ... ... ... ... 61 17. Elmensaje widget
... ... ... ... ... ... ... 63 18. Widget TheOptionMenu ... ... ... ... ... ...
64 19. Widget ThePanedWindow ... ... ... ... 65 19.1 .PanedWindow nio opciones c
onfiguracin ... ... ... ... ... ... ... . 67 20. RADIOBUTTON widget ... ... ... .

.. 68 21. Widget TheScale ... ... ... ... ... ... ... 71 22. Widget TheScrollbar
... ... ... ... ... .. 74 22.1 . Devolucin TheScrollbarcommand ... ... ... ... .
.. ... 77 22.2 . Conexin a otro widget aScrollbar ... ... ... ... ... ... ... ...
77 23. Widget TheSpinbox ... ... ... ... ... ... ... 78 24. Acumulacin delcampo
widget ... ... 82 24.1 .widget de texto ndices ... ... ... ... ... ... 84 24.2 .w
idget de texto marca ... ... ... ... 86 24.3 .widget de texto imgenes ... ... ...
... ... ... 86 24.4 .widget de texto windows ... ... ... ... ... ... ... 87 24.
5 .widget de texto etiquetas ... ... ... ... ... ... ... ... 87 24.6 . Las ficha
s de Configuracin aText widget ... ... ... ... ... ... . 87 24.7 . Widget acumula
cin delcampo undo/redo pila ... ... ... ... ... ... ... .. 88 24.8 . Mtodos ontext
o widgets ... ... ... ... ... ... ... ... 88 25.Nivel Superior : ventana de nive
l superior mtodos ... ... ... ... ... ... 95 26. Mtodos widget Universal ... ... .
.. ... 97 27. La estandarizacin apariencia ... ... ... ... ... ... 105 27.1 . Cmo
asignar un nombre a un widget de clase ... ... ... ... ... ... . 106 27.2 . Cmo a
signar un nombre a una instancia widget ... ... ... ... ... ... 107 27.3 . Requi
sitos especificados lneas de recursos ... ... ... ... ... .. 107 27.4 . Normas de
recursos ... ... ... ... ... ... . 108 28. ttk: widgets temticas ... .. 108
2 8,5 referencia Tkinter Nuevo Mxico Tech Computer Center

28.1 . Importar ttk ... .. 109 28.2 . El ttk widget set ... ... ... ... ... ...
... ... 110 29. ttk.Button ... ... ... ... ... ... ... 110 30. ttk.Botn ... ... .
.. ... ... 112 31. ttk.Combobox ... ... ... ... ... ... ... ... 115 32. ttk.Entr
ada ... ... ... ... ... ... ... 116 33. ttk.frame ... ... ... ... ... ... ... 11
8 34. ttk.Etiqueta ... ... ... ... ... ... ... 119 35. ttk.LabelFrame ... ... ..
. ... ... ... ... 122 36. ttk.Menubutton ... ... ... ... ... ... ... 124 37. ttk
.porttil ... ... ... ... ... ... ... ... 126 37.1 . Eventos virtuales para el ttk
.widget Notebook ... ... ... ... ... ... ... .. 128 38. ttk.PanedWindow ... ...
... ... ... 129 39. ttk.Progressbar ... ... ... ... ... 130 40. ttk.radiobutton
... ... ... ... ... 131 41. ttk.escala ... ... ... ... ... ... ... 133 42. ttk.s
crollbar ... ... 135 43. ttk.Separador ... ... 137 44. ttk.Sizegrip ... ... ...
... ... ... ... ... 137 45. ttk.Treeview ... ... ... ... ... ... ... ... 137 45.
1 . Eventos virtuales para el ttk.Treeview widget ... ... ... ... ... ... ... ..
145 46. Mtodos comunes a todos los widgets ttk ... ... ... ... ... ... ... ... 1
45 46.1 . Especificar los estados widget de ttk ... ... ... ... ... ... ... 146
47. Personalizar y crear ttk temas y estilos ... ... ... ... ... ... ... . 146 4
8. Encontrar y usar ttk temas ... ... ... ... ... ... ... 147 49. Uso y personal
izacin de ttk estilos ... ... ... ... ... ... ... ... 147 50. El ttk capa element
o ... .. 149 50,1 . ttk presentaciones: estructuracin de un estilo ... ... ... ..
. ... ... ... 149 50.2 . ttk estilo mapas: cambios en el aspecto dinmico ... ...
... ... ... ... ... .. 151 51. Conexin de la lgica de la aplicacin de los widgets .
.. ... ... ... ... ... ... . 153 52. Variables de Control: los valores que suste
ntan los widgets ... ... ... ... ... ... . 153 53. Atencin: enrutamiento entrada
de teclado ... ... ... ... ... ... ... ... 155 53,1 . Ttk widgets en ... ... ...
... ... ... ... . 156 54. Eventos ... ... ... ... ... ... ... ... 157 54.1 . Ni
veles de ... ... ... ... ... ... 157 54.2 . Las secuencias de sucesos ... ... ..
. ... ... ... ... ... 158 54,3 . Tipos de eventos ... ... ... ... ... 158 54,4 .
Caso modiiers ... ... ... ... ... ... 160 54,5 . Nombres clave ... ... ... ...
... 160 54,6 . Escribir su handler: casode clase ... ... ... ... ... ... ... ...
162 54,7 . Los argumentos adicionales truco ... ... ... ... ... ... 164 54,8 .
Eventos virtuales ... .. 165 55. Los dilogos emergentes ... ... ... ... ... ... .
.. 165 55,1 . Dilogos ThetkMessageBox mdulo ... ... ... ... ... ... ... ... 165 55
,2 . Mdulo ThetkFileDialog ... ... ... ... ... ... ... ... 167 55.3 . Mdulo ThetkC
olorChooser ... ... ... ... ... ... 168
1. Una cruz-plataforma interfaz grfica de usuario generador de Python
Tkinter es un GUI (interfaz grfica de usuario) widget para Python. Este documento
fue escrito con Tkinter Python 2.7 y 8.5 en el sistema X Window en Linux. La ve
rsin puede variar.

New Mexico Tech Computer Center Tkinter 8,5 referencia 3

referencias pertinentes:
Fredrik dos versiones de su introduccin a Tkinter: una ms completa 1999 Lundh, 3 q
uien escribi Tkinter4 , tiene la versin y la versin 2005 que presenta unas caracters
ticas nuevas.
Python 2.7
5 referencia : informacin general sobre el lenguaje Python.
En el caso de un ejemplo de aplicacin de trabajo considerable (alrededor de 1000
lneas de cdigo), huey: un color y la seleccin de fuente de6 herramienta . El diseo d
e esta aplicacin muestra cmo construir su propio complejo widgets.
Empezaremos mirando la parte visible de Tkinter: crear los widgets y ordenarlas
en la pantalla. Ms adelante hablaremos de cmo conectar el rostro de la "panel fron
tal" -de la aplicacin de la lgica detrs de ella.
2. Una aplicacin mnimo
aqu es un trivial programa Tkinter que contiene slo un botn Salir:
#! /usr/bin/env python importTkinterastk
classApplication(tk.Frame):
def__init__(self, master=None):
ct.Frame.__INIT__(self, master) self.grid() self.createWidgets()
defcreateWidgets(self):
self.tk =quitButton.Button(self, text= 'Salir', command=self.salir) self.quitBut
ton.grid()
app=Aplicacin() app.master.title( 'Ejemplo de aplicacin") app.mainloop()
Esta lnea hace que el script de ejecucin automtica, si es que el sistema tiene Pyth
on instalado correctamente.
Esta lnea importa el mdulo Tkinter en su programa del espacio de nombres, pero cam
bia su astk.
La clase de aplicacin debe heredar de Tkinter'sFrame clase.
Llama al constructor de la clase padre".
Es necesario para que la aplicacin que aparezcan en la pantalla.
Crea un botn con la etiqueta "Salir".
Coloca el botn de la aplicacin.
El programa principal comienza aqu laaplicacin de instancias de clase.
Esta llamada al mtodo establece el ttulo de la ventana de "aplicacin de ejemplo".
Inicia la aplicacin del bucle principal, a la espera de eventos del mouse y del t
eclado.
3 4:5
Http://efbot.org/tkinterbook/
http://www.nmt.edu/tcc/help/pubs/python/ http://www.nmt.edu/tcc/help/lang/python
/examples/huey/ 6
8,5 4 referencia Tkinter Nuevo Mxico Tech Computer Center

3. Las definiciones
antes de continuar, vamos deine algunos de los trminos comunes.
ventana Este trmino tiene diferentes significados en diferentes contextos, pero e
n general se refiere a un rea rectangular en algn lugar de la pantalla.
ventana de nivel superior una ventana que existe independientemente de la pantal
la. Ser decorada con el bastidor estndar y los controles para el sistema de deskto
p manager. Puede moverla en el escritorio. Por lo general, puede cambiar su tamao
, aunque su aplicacin puede prevenir este widget el trmino genrico para cualquiera
de los elementos esenciales que componen una aplicacin en una grfica para el usuar
io de .. Ejemplos de widgets: botones, botones de opcin, textields, marcos y etiq
uetas de texto.

estructura de Tkinter, delrespaldo widget es la unidad bsica de organizacin para d


iseos complejos. Un marco es un rea rectangular que puede contener otros widgets.
hijo, uno de sus padres cuando cualquier widget se crea, una relacin padre-hijo e
s creado. Por ejemplo, si se coloca una etiqueta de texto dentro de un marco, el
marco es el padre de la etiqueta.
4. Gestin de Diseo
Ms adelante discutiremos los widgets, los componentes bsicos de su aplicacin de int
erfaz grfica de usuario. Cmo se organizan los widgets en una ventana?
Aunque hay tres diferentes "geometra responsables de Tkinter, el autor prefiere c
laramente el .grid() la geometra manager para casi todo. Este gestor trata a cada
ventana o marco como una tabla de una intrincada red de filas y columnas.
Una celda es la zona de la interseccin de una fila y una columna.
El ancho de cada columna es la anchura de la celda ms amplia en la columna.
La altura de cada fila es la altura de la clula ms grande de la fila.
Para los widgets que no mal toda la celda, puede especificar lo que sucede en el
espacio extra. Puede dejar el espacio adicional fuera el widget, o estirar el w
idget para que, en la dimensin horizontal o vertical.
Se pueden combinar varias celdas en una zona ms amplia, un proceso llamado que ab
arca.
Cuando se crea un widget, no aparecen hasta que se registre con una geometra mana
ger. Por lo tanto, la construccin y colocacin de un widget es un proceso de dos pa
sos que pasa algo como esto:
self.cosa=tk.Constructor (PARENT,...) self.thing.grid(...)
whereConstructor es uno de los widgets likeButton clases ,Marco , y as sucesivame
nte, andparent widget es el padre de este nio widget est en proceso de construccin.
Todos los widgets tienen un.grid() mtodo que usted puede utilizar para indicar l
a geometra manager donde colocarlo.
New Mexico Tech Computer Center Tkinter referencia 8,5

4,1 5 . El grid() mtodo


para mostrar una widgetwon la pantalla de la aplicacin:
w.grid(option=value,...)
Este mtodo registra un widgetwwith la cuadrcula de geometra manager si no lo haces,
el widget existen internamente, pero no va a ser visible en la pantalla. Para l
as opciones, consulte la Tabla 1, "Argumentos de .grid() la geometra manager" (p.
6).
Tabla 1. Los argumentos de las.grid() la geometra manager
columnThe nmero de columna en la que desea el widget cuadriculada, contando desde
cero. El valor predeterminado es cero.
Generalmente, un widget columnspan ocupa slo una celda de la cuadrcula. Sin embarg
o, puede tomar varias celdas de una fila y combinarlos en una celda mayor thecol
umnspan de opcin en el nmero de clulas. Por ejemplo, w.grid(fila=0, columna=2,colum
nspan= 3) pondra widgetwin una celda que abarca las columnas 2, 3 y 4 de la fila
0.
in_ registerwas a un nio de algunos widget parentw2debe ser descendiente del w2,
usein_=w2. La nueva matriz widget utiliza whenwwas.
ipadxInternal x relleno. Esta dimensin se agrega dentro del widget dentro de sus
lados izquierdo y derecho.
ipadyInternal y relleno. Esta dimensin se agrega dentro del widget dentro de sus
bordes superior e inferior.
padx externo x relleno. Esta dimensin se agrega a la izquierda y a la derecha fue
ra del widget.
pady y acolchado externo. Esta dimensin se agrega por encima y por debajo del wid
get.
fila El nmero de la fila en la que desea insertar el widget, contando desde 0. El
valor por defecto es el siguiente nmero ms alto de fila desocupadas.
rowspan normalmente un widget ocupa slo una clula de la red. Puede tomar varias ce

ldas adyacentes de una columna, sin embargo, al establecer therowspan opcin en el


nmero de clulas de agarrar.
Esta opcin se puede utilizar en combinacin con thecolumnspan opcin para tomar un bl
oque de celdas. Por ejemplo, w.grid(fila=3, columna=2,rowspan=4, columnspan= 5)
lugar widgetwin un rea formada por 20 celdas fusionadas, con nmeros de fila 3 a 6
y nmeros de la columna 2-6.
stickyThis opcin determina cmo se distribuye el espacio extra dentro de la clula qu
e no sean tomadas por el widget en su tamao natural. Consulte a continuacin.
Si usted no proporciona asticky atributo, el comportamiento predeterminado es ce
ntrar el widget de la clula.
Se puede colocar el widget en la esquina de la celda por usingsticky=tk.NE (arri
ba a la derecha) ,los conocimientos tradicionales.SE (abajo a la derecha) ,tk.SW
(abajo a la izquierda), ortk.NW (arriba a la izquierda).
Puede colocar el widget centrado contra uno de los lados de la clula por usingsti
cky=tk.N (centro superior), ct.E (centro derecha) ,tk.S (centro de la parte infe
rior), ortk.W (centro izquierda).
Usesticky=tk.N+ct.S a estirar el widget en vertical pero se deja centrado horizo
ntalmente.
Usesticky=tk.E+tk.W para estirarla en forma horizontal, pero dejarlo centrado ve
rticalmente.
Usesticky=tk.N+tk.tk.E+S+tk.W a estirar el widget tanto horizontal como vertical
mente a enfermo, la celda.
Tkinter 8,5 6 referencia Nuevo Mxico Tech Computer Center

Las dems combinaciones tambin funciona. Por ejemplo, sticky=tk.tk.N+S+tk.W se exti


ende verticalmente el widget y colocarlo contra el oeste (izquierda) de pared.
4.2 . Otros mtodos de gestin de
estos relacionados con la cuadrcula deined mtodos en todos los widgets:
w.grid_bbox(columna=None, row=None, col2 =ninguno, fila2 =ninguno) se devuelve u
n 4-tupla que describe el cuadro delimitador de todos o algunos de los sistema d
e parrilla en widgetw. El irst dos nmeros devueltos son thexandycoordinates de la
esquina superior izquierda de la zona, y el segundo dos nmeros son la anchura y
la altura.
Si pasa incolumn androw argumentos, a la que ha regresado cuadro delimitador se
describe el rea de la celda de la columna y fila. Si se pasa tambin incol2 androw2
argumentos, el cuadro delimitador se describe el rea de la cuadrcula de columnsco
lumn cribe2 incluido y de rowsrow torow2 incluido.
Por ejemplo, w.grid_bbox(0, 0,1,1 ) devuelve el rectngulo de seleccin de cuatro clu
las, no uno.
w.grid_forget() Este mtodo hace widgetwdisappear desde la pantalla. An existe, sim
plemente, no es visible. Puede utilizar.grid() para que aparezca de nuevo, pero
no recordar sus opciones de cuadrcula.
w.grid_info() devuelve un diccionario cuyas teclas arew opcin de nombres, con los
valores correspondientes de las opciones.
w.grid_location( x,y) con respecto a las coordenadas (x,y) con respecto a la que
contiene widget, este mtodo devuelve una tupla(col, row)describiendo lo que la g
estin de sistema de red que contiene coordenadas pantalla.
w.grid_propagate() Normalmente, todos los widgets propagar sus dimensiones, lo q
ue significa que se ajuste a su contenido.
Sin embargo, a veces desea forzar un widget que permite que un determinado tamao,
independientemente del tamao de su contenido. Para ello, callw.grid_propagate(0)
wherewis el widget cuyo tamao desea forzar.
w.grid_remove() Este mtodo es como.grid_forget() , pero sus opciones de cuadrcula
se recuerdan, por lo que si.grid() una vez ms, la utilizacin de los mismos opcione
s configuracin red.
w.grid_size() devuelve un 2-tupla contiene el nmero de columnas y el nmero de fila
s, respectivamente, del sistema de rejilla semanasw.

w.grid_slaves(fila=None, columna=None) Devuelve una lista de los widgets de widg


etw. Si no se proporciona ningn argumento, se obtiene una lista de todos los admi
nistrados los widgets. Utilice therow= argumento para seleccionar slo los widgets
en una fila, o propiedad column= argumento para seleccionar slo los widgets en u
na sola columna.
4.3 . Configuracin de columna y fila
a menos que usted tome ciertas medidas, el ancho de una columna de la cuadrcula d
e widget ser igual a la anchura de la celda ms amplia, y la altura de una fila de
la cuadrcula ser la altura ms alta de su celda. Atributo Thesticky controles en el
widget slo en los casos en que se colocarn si no completamente mal la celda.
Si desea anular esta automtico del tamao de las columnas y las filas, utilice esto
s mtodos en la matriz widgetwthat contiene el diseo de cuadrcula:
Nuevo Mxico Tech Computer Center Tkinter 8,5 referencia 7

w.columnconfigure( N,option=value,...) en la cuadrcula de diseo interior widgetw,


conigure el givenoption columnNso que tiene el valor dado. Para ver las opciones
, consulte la tabla que aparece a continuacin.
w.rowconfigure( N,option=value,...) en la cuadrcula de diseo interior widgetw, con
igure rowNso givenoption que tiene la givenvalue .
Para ver las opciones, consulte la tabla que aparece a continuacin.
Aqu estn las opciones que se utilizan para coniguring tamaos columna y fila.
Tabla 2. Columna y fila opciones configuracin para el grid(
minsize ) la geometra de la columna o fila de tamao mnimo en pxeles. Si no hay nada
en la columna o fila, no aparecer, incluso si se usa esta opcin.
pad un nmero de pxeles que se agregarn a la columna o fila, por encima de la celda
ms grande en la columna o fila.
weightTo hacer una columna o fila elstico, utilice esta opcin y proporcione un val
or que le da el peso relativo de esta columna o fila cuando se distribuyen el es
pacio extra. Por ejemplo, si un widgetwcontains un diseo de cuadrcula, estas lneas
se distribuyen tres cuartas partes del espacio adicional que theirst columna y l
a cuarta a la segunda columna:
w.columnconfigure(0, peso= 3) w.columnconfigure(1, peso= 1)
Si no se utiliza esta opcin, la columna o fila no se estirar.
4.4 . Haciendo que la ventana
no modificable que desea permitir que el usuario cambie el tamao de la ventana de
la aplicacin completa, y distribuir el espacio interior entre sus widgets? Esto
requiere algunas operaciones que no son evidentes.
Es necesario utilizar las tcnicas de fila y columna de tamao, tal como se describe
en la Seccin 4.3 , "Coniguring tamaos columna y fila" (p. 7), para que la cuadrcul
a yourApplication widget elstico.
Sin embargo, que por s sola no es suicient.
Considerar la aplicacin trivial se examina en la Seccin 2, "una aplicacin mnimo" (p.
4), que slo contiene un botn Salir. Si se ejecuta esta aplicacin, y cambiar el tam
ao de la ventana, el botn permanece del mismo tamao, centrado en la ventana.
Aqu es un reemplazo de la versin del.__createWidgets() en la aplicacin mnimo. En est
a versin, el botn Salir alwaysills todo el espacio disponible.
defcreateWidgets(self):
self.top=winfo_toplevel() top.rowconfigure(0, peso= 1) la parte superior.columnc
onfigure(0, peso= 1) self.rowconfigure(0, peso= 1) self.columnconfigure(0, peso=
1) auto.quit=Botn(self, text= 'Salir', command=self.salir) self.quit.grid(fila=0
, columna=0, sticky=tk.tk.N+S+tk.E+tk.W)
El "nivel superior" es la ventana exterior de la pantalla. Sin embargo, esta ven
tana no es la ventana de la aplicacin, sino que es el padre de laaplicacin. Para o
btener la ventana de nivel superior,
8 Tkinter 8,5 referencia New Mexico Tech Computer Center

llame al.winfo_toplevel() mtodo en cualquier widget en su aplicacin; vase la Seccin


26, "Universal widget" (p. 97).
Esta lnea hace fila 0 del nivel superior de la ventana red elstica.
Esta lnea, columna 0 de la parte superior de la ventana de red elstico.
Hace 0 fila de cuadrcula de laaplicacin widget elstico.
Hace 0 columna de cuadrcula de laaplicacin widget elstico.
La argumentsticky=tk.N+tk.tk.S+E+tk.W realiza el botn expandir a malos tratos su
celda de la cuadrcula.
Hay un cambio que se deben hacer. En el constructor, cambie la segunda lnea, como
se muestra en la figura:
def__init__(self, master=None):
ct.Frame.__INIT__(self, master) self.grid(sticky=tk.tk.N+S+tk.E+tk.W) self.creat
eWidgets() en
el argumentsticky=tk.tk.N+S+tk.E+tk.aW paneles.grid() es necesario para que theA
pplic- toill widget ampliar su celda de la ventana de nivel superior.
5. Atributos estndar
antes de mirar a los widgets, echemos un vistazo a cmo algunos de sus atributos c
omunes, como los tamaos, colores y fuentes son propsitos especi cos.
Cada widget tiene un conjunto de opciones que altera su aspecto y comportamiento
de los atributos, como fuentes, colores, tamaos, etiquetas de texto, y tal.
Se puede especificar las opciones cuando se llama al constructor del widget usan
do la palabra clave argumentos como texto= 'PNICO!" orheight=20 .
Una vez que haya creado un widget, luego puede cambiar cualquier opcin mediante e
l widget's .config(). Puede recuperar el valor actual de cualquier opcin mediant
e el widget's .del cget().
Consulte la Seccin 26, "Universal widget" (p. 97) Para obtener ms informacin sobre
estos mtodos.
5.1 . Dimensiones
distintas longitudes, anchuras y otras dimensiones de los widgets se pueden desc
ribir de muchas unidades diferentes.
Si se establece una dimensin a un nmero entero, se supone que es en pxeles.
Se puede especificar las unidades mediante el establecimiento de una dimensin a u
na cadena que contiene un nmero seguido de:
Cuadro 3. Unidades de Medida
cCentimeters iInches mMillimeters pPrinter de puntos (aproximadamente 1/72
™ )
Nuevo Mxico Tech Computer Center Tkinter referencia 8,5

5,2 9 . El sistema
de coordenadas en la mayora de las sistemas de visualizacin, el origen de cada sis
tema de coordenadas se encuentra en la esquina superior izquierda, con la coorde
nada x cada vez ms hacia la derecha, y la coordenada y creciente hacia la parte i
nferior:
La unidad bsica es el pxel, con la parte superior izquierda pixel tiene coordenada
s (0,0 ). Las coordenadas que especifica como nmeros enteros siempre se expresan
en pxeles, pero cualquier coordenada puede ser propsitos especi cos como dimension
es cantidad; vase la seccin 5.1 , "dimensiones" (p. 9).
5.3 . Colores
existen dos mtodos generales para especificar colores de Tkinter.
Se puede utilizar una cadena que especifica la proporcin de rojo, verde y azul en
dgitos hexadecimales:
#rgb cuatro bits por color #rrggbb Ocho bits por color #rrrgggbbb doce bits por
color
Por ejemplo, ' #fff" es de color blanco, " # 000000" es de color negro, ' # 000f
ff000" es puro verde y' # 00ffff' es puro cian (verde y azul).

Tambin se puede usar cualquier local deined nombre de color estndar. Los colores "
blanco', 'negro', 'rojo', 'verde', 'azul', 'cian', 'amarillo", y "magenta" estar
siempre disponible. Otros nombres pueden trabajar, en funcin de la instalacin loca
l.
5.4 . Fuentes de tipo
dependiendo de la plataforma, puede haber hasta tres maneras de especificar tipo
.
Como una tupla cuyo primer elemento es la familia de fuente, seguido de un tamao
(en puntos si es positivo, en pixeles si negativo), opcionalmente seguido por un
a cadena de caracteres que contiene uno o ms de los estilo modiiersbold , cursiva
, subrayado , andoverstrike .
Ejemplos: ( 'Helvetica', ' 16 ') para un 16 puntos y Helvetica regular ( 'Times'
, ' 24 ' , 'bold italic") de 24-horas del punto negrita cursiva. Para un 20-pix
el veces negrita, uso( 'Times' , -20, "bold" ).
Puede crear un "objeto font" mediante la importacin y uso mdulo thetkFont itsFont
constructor de clase:
importtkFont font=tkFont.Font( serie,...)
donde las opciones son:
familia nombre de la familia de fuentes como una cadena.
10 8.5 Referencia Tkinter Nuevo Mxico Tech Computer Center

size El tamao de la fuente como un nmero entero de puntos. Para obtener una fontnp
ixels alta, el uso de n.
peso'negrita' de negritas, 'normal' para peso habitual.
inclinacin'italic" para cursiva, 'roman' para unslanted.
subrayar texto subrayado1en0de normal.
overstrike 1 texto superpuesto de0de normal.
Por ejemplo, para obtener una 36 puntos Helvetica bold italic:
helv36 =tkFont.Font(family= "Helvetica", size=36,peso= 'bold')
Si se est ejecutando en el sistema de ventanas X, puede utilizar cualquiera de lo
s nombres de las fuentes. Por ejemplo, la fuente named'- -LUCIDATYPEWRITER-MEDIU
M-R- * * - * - * -140- * - * - * - * - * - * ' es una buena fuente de anchura de
terminada para uso en pantalla. Utilice el programa xfontsel para ayudar a selec
cionar fuentes agradable.
Para obtener una lista de todas las familias de fuentes disponibles en la plataf
orma, se llama a esta funcin:
tkFont.La familia() en
el valor de retorno es una lista de cadenas. Nota: Se debe crear la ventana raz a
ntes de llamar a esta funcin.
Estos mtodos son deined allFont de objetos:
.reales(opcin=None) Si no se pasan argumentos, se obtiene un diccionario de la fu
ente real de los atributos, que puede variar de los que se solicit. Para obtener
el valor de un atributo, pase su nombre como argumento.
.Del cget(opcional) devuelve el valor de la givenoption .
.Configure( serie,...) utilizar este mtodo para cambiar una o ms opciones en una f
uente. Por ejemplo, si usted tiene aFont calledtitleFont objeto , si calltitleFo
nt.configure(familia= 'times', size= 18), que va a cambiar de fuente 18pt Times
y cualquier widgets que utilizan esa fuente va a cambiar demasiado.
.Copy() devuelve una copia del objeto aFont.
.Medida( texto) Pasar este mtodo una cadena y se le devolver el nmero de pixels de
ancho que la cadena se llevar a cabo en la fuente. Advertencia: algunos caractere
s inclinados puede extender fuera de esta zona.
.Parmetros( opcional) si llama a este mtodo sin argumentos, devuelve un diccionari
o de todas las mtricas de font. Puede re- cupere el valor de una sola mtrica al pa
sar su nombre como argumento. Las mediciones incluyen:
ascenso Nmero de pxeles de altura entre la base y la parte superior de la mayor as
cender

descenso Nmero de pxeles de altura entre la lnea de base y la parte inferior de las
tarifas ms bajas ascender.
fixedThis valor es0de un ancho variable1en fuente y una fuente monoespaciada.
linespace Nmero de pxeles de altura total. Este es el lder slido de tipo set en la f
uente.
New Mexico Tech Computer Center Tkinter 8,5 referencia 11

5.5 .
El mdulo Tkinter Anclajes deines ancla una serie de constantes que se pueden util
izar para controlar dnde se colocan los elementos relativos a su contexto. Por ej
emplo, puede especificar dnde los anclajes un widget se encuentra ubicado dentro
de un marco cuando la trama es ms grande que el widget.
Estas constantes se presentan como puntos cardinales, en donde el norte est arrib
a y west est a la izquierda. Le pedimos disculpas a nuestro Hemisferio Sur los le
ctores de este hemisferio Norte a7el chovinismo.
El anclaje se muestran las constantes en este esquema:
por ejemplo, si crea un pequeo widget dentro de una gran trama y el uso theanchor
=tk.opcin de SE, el widget se situar en la esquina inferior derecha del bastidor.
Si usted usedanchor=tk.N en su lugar, el widget se centrara en el borde superior.
Los anclajes se utilizan tambin para deine en aquellos casos en los que el texto
se posiciona respecto a un punto de referencia. Por ejemplo, si usted usetk.CENT
RO como un delimitador de texto, el texto se centra horizontalmente y verticalme
nte alrededor del punto de referencia. Anchortk.NW, el texto, de modo que el pun
to de referencia coincide con el noroeste (esquina superior izquierda) de la caj
a que contiene el texto. Anchortk.W, centrar el texto verticalmente alrededor de
l punto de referencia, con el borde izquierdo del cuadro de texto pasando por es
e punto, y as sucesivamente.
5.6 . Socorro
socorro estilos el estilo de un widget se refiere a ciertos simulado 3-D efectos
alrededor de la parte exterior del widget. Aqu se muestra una captura de pantall
a de una hilera de botones que exhiben todos los estilos posibles de socorro:
El ancho de estas fronteras depende de theborderwidth opcin del widget. El grfico
anterior muestra qu aspecto tienen con un 5-pixel frontera; el borde ancho es 2.
5.7 .
Opciones Forbitmap mapas en los widgets, estos mapas tienen la garanta de estar d
isponible:
7:12
Tkinter 8,5 referencia Nuevo Mxico Tech Computer Center

el grfico anterior showsButton widgets mapas con el estndar. De izquierda a derech


a, estn "error" , "gris75 ' , 'gris50 ' , 'gris25 ' , 'gris12" , 'arena', 'info'
, 'questhead", "pregunta" y "advertencia".
Puede utilizar sus propios mapas. La ile.xbm (X) formato mapa de bits. En lugar
de un mapa estndar nombre, use la cadena " @" seguido por el nombre de la ruta de
la.xbmile.
5.8 . Cursores
hay un buen nmero de los cursores de ratn. Sus nombres y los grficos se muestran aq
u. El grfico puede variar en funcin del sistema operativo.
Tabla 4. Los valores de opcin del cursor
flecha
based_arrow_downmiddlebutton
based_arrow_up hombre ratn
lpiz barco
pirata bogosity

bottom_left_cornerplus bottom_right_cornerquestion_arrow
bottom_side right_ptr bottom_tee right_side box_spiral right_tee
center_ptr rightbutton
rtl_logo crculo reloj velero
coffee_mug sb_down_arrow
cruz
cruz sb_h_double_arrow cross_reverse sb_left_arrow sb_right_arrow diamond_cross
sb_up_arrow
dot sb_v_double_arrow
Nuevo Mxico Tech Computer Center Tkinter 8,5 referencia 13

lanzadera dotbox
double_arrow draft_large araa tamao
draft_small aergrafo
draped_box star
destino de exchange ms inri fleur tcross top_left_arrow gumby top_left_corner
parte1
parte2 top_right_corner top_side corazn top_tee icono trek
iron_cross ul_angle left_ptr paraguas left_side ur_angle left_tee ver
leftbutton xterm
ll_angle X_cursor lr_angle
5.9 . Imgenes
Hay tres mtodos generales para mostrar imgenes grficas en su Tkinter aplicacin.
Para mostrar mapas de bits (de dos colores) imgenes en el formato.xbm, consulte l
a Seccin 5.9.1 , "TheBitmapImage clase" (p. 15).
Para mostrar imgenes a todo color en el.gif , .pgm , o.ppm formato, consulte la S
eccin 5.9.2 , "ThePhotoImage clase" (p. 15).
14 8.5 Referencia Tkinter Nuevo Mxico Tech Computer Center

El Python Imaging Library (PIL) es compatible con las imgenes de una manera mucho
ms amplia variedad de formatos. Clase ItsImageTk speciically diseado para mostrar
imgenes de Tkinter aplicaciones. Ver documento complementario del autor de PIL d
ocumentacin: Python Imaging Library (PIL) referencia rpida el 8 .
5.9.1 . TheBitmapImage clase
para mostrar una imagen de dos colores en formato xbm, necesitar este constructor
:
tk.BitmapImage(file= f[ ,fondo= b] [ ,fondo= c])
wherefis el nombre del.xbm imageile.
Normalmente, el primer plano (1) bits de la imagen se mostrar como pxeles de color
negro y el fondo (0) bits de la imagen ser transparente. Para cambiar este compo
rtamiento, utilice el optionalbackground= boption para establecer el fondo color
b y el optionalforeground= coption para definir el primer plano a color c. Requi
sitos especificados de color, consulte la Seccin 5.3 , "Colores" (p. 10).
Este constructor devuelve un valor que puede ser utilizado en cualquier parte Tk
inter espera una imagen. Por ejemplo, para mostrar una imagen como una etiqueta,
utilice aLabel widget (vase la Seccin 12, "TheLabel widget" (p. 48), y la oferta
theBitmapImage objeto como el valor de la imagen:
logo=tk.BitmapImage( 'logo.xbm', el primer plano= "rojo") Etiquetar(image=logo)
.grid()
5.9.2 . ThePhotoImage clase
para mostrar una imagen en color en.gif , .pgm , o.ppm formato, usted necesitar e
ste constructor:
tk.PhotoImage(file= f)
wherefis el nombre del imageile. El constructor devuelve un valor que se puede u

tilizar en cualquier lugar Tkinter espera una imagen.


5.10 .
UNA geometra Geometra cadenas cadena es un mtodo estndar para describir el tamao y la
ubicacin de una ventana de nivel superior en un escritorio.
Una geometra cadena tiene esta forma general:
"anxa' donde:
Thewandhparts la anchura y altura en pxeles. Estn separados por el carcter "x".
Si el siguiente artculo tiene la forma+x, speciies que el lado izquierdo de la ve
ntana debe bexpixels desde el lado izquierdo del escritorio. Si tiene la forma d
e x, en la parte derecha de la ventana isxpixels desde el lado derecho del escri
torio.
Si el siguiente artculo tiene la forma+y, speciies que la parte superior de la ve
ntana debe beypixels por debajo de la parte superior del escritorio. Si tiene la
forma y la parte inferior de la ventana le beypixels por encima del borde infer
ior del escritorio.
8 Http://www.nmt.edu/tcc/help/pubs/pil/
Nuevo Mxico Tech Computer Center Tkinter 8,5 referencia 15

Por ejemplo, una ventana creada withgeometry= ' 120x50-0 +20' sea de 120 pxeles d
e ancho por 50 pxeles de alto, y en su esquina superior derecha en el borde derec
ho del escritorio y 20 pxeles por debajo del borde superior.
5.11 . Los nombres de las ventanas
El trmino ventana describe un rea rectangular en el escritorio.
Un nivel superior o ventana raz es una ventana que tiene una existencia independi
ente en el administrador de ventanas.
Est decorado con el gestor de ventanas de decoraciones, y se pueden mover y cambi
ar de tamao independientemente.
La aplicacin puede utilizar cualquier nmero de ventanas de nivel superior.
El trmino "ventana" tambin se aplica a cualquier widget que es parte de una ventan
a de nivel superior.
Tkinter nombres todos estos cristales con una ventana nombre de la va jerrquica.
La ventana raz del nombre' . ".
Ventanas secundarias tienen nombres de la forma" .n', wherenis un entero en form
a de cadena. Por ejemplo, una ventana denominada".135932060' es un hijo de la ve
ntana raz ( ' .' ).
Ventanas en ventanas secundarias tienen nombres de la forma'p. n'wherepis el nom
bre de la ventana padre andnis un entero. Por ejemplo, una ventana denominada".1
35932060.137304468' tiene ventana principal".135932060' , por lo que es un nieto
de la ventana raz.
El nombre relativo de una ventana es la parte ms all del ltimo' .' en el nombre de
la ruta. Para continuar con el ejemplo anterior, el nieto ventana tiene un nombr
e relativo" 137304468 ".
Para obtener el nombre de la ruta de acceso de un widgetw, usestr(w).
Vase tambin la Seccin 26, "mtodos widget Universal" (p. 97) De los mtodos que puede u
tilizar para operar en los nombres de las ventanas, especialmente el.winfo_name
, .winfo_parent , y .winfo_pathname mtodos.
5.12 . Estilos de combinacin y
de agradable y eficaz prestacin de los esquemas, a veces es una buena idea presta
r atencin a estilos de combinacin y.
El estilo de una lnea, es la forma del extremo de la lnea. Estilos son:
tk.EMPALME : El final de la lnea se corta en cuadrados de una lnea que pasa por el
punto final.
Los conocimientos tradicionales.PROYECCIN : El final de la lnea de corte cuadrado,
pero la lnea de corte proyectos el punto final una distancia igual a la mitad de
la anchura de la lnea.
Tk.RONDA : El final describe un semicrculo centrado en el punto final.
El estilo se describe la forma en que dos segmentos de lnea en un ngulo.

Los conocimientos tradicionales.RONDA : La combinacin es un crculo centrado en el p


unto donde la lnea adyacente los segmentos.
Tk.: Alat aspecto CNICO se dibuja en un ngulo intermedio entre los ngulos de las lnea
s adyacentes.
Los conocimientos tradicionales.MITER : Los bordes de la lnea adyacente los segmen
tos se siguieron reunindose con una punta afilada.
Esta ilustracin muestra la forma de Tkinter opciones de combinacin y trabajar con
una lnea de dos segmentos de lnea. Pequeos crculos rojos muestran la ubicacin de los
puntos que deine esta lnea.
16 8.5 Referencia Tkinter Nuevo Mxico Tech Computer Center

5.13 . Guin de
una serie de widgets que permiten especificar un contorno de lnea discontinua. Da
r opciones Thedash anddashoffset youine control sobre el patrn exacto de los guio
nes.
dash Esta opcin es propsitos especi cos como una tupla de enteros. Theirst speciies
entero cuntos pxeles se deben destacar. El segundo entero speciies cuntos pxeles debe
omitirse antes de comenzar a dibujar otra vez, y as sucesivamente. Cuando todos
los nmeros enteros en la tupla ya se han agotado, se reutilizan en el mismo orden
hasta que la frontera est completa.
Por ejemplo, dash= (3,5 ) produce corriente alterna 3-pixel guiones separados po
r 5-pixel lagunas. Un valor ofdash= (7,1,1,1 ) produce un guin y dibujo de puntos
, con el tablero siete veces ms largo que el punto o las diferencias en el punto.
Un valor ofdash= (5,) produce alternatingive pxel de guiones y de las lagunas de
pxeles.
dashoff para iniciar el modelo de guin en diferentes puntos del ciclo en lugar de
al principio, utilizar una opcin de dashoff=n, wherenis el nmero de pxeles para sa
ltar al principio del patrn.
Por ejemplo, en el caso de optionsdash= (5,1,2,1 )anddashoff=3 , el primer model
o producido ser: 2, 1, 2, y 1. Modelos posteriores ser de 5, 1, 2, y 1. Aqu est una
captura de pantalla de una lnea trazada con esta combinacin de opciones:
5,14 .
Este tipo de patrones puede parecer un punto muy delicado estilo, pero si dibuja
r un grfico que tiene dos objetos con stipple patrones, una verdadera profesional
, asegrese de que los patrones alinear a lo largo de su frontera.
New Mexico Tech Computer Center Tkinter 8,5 referencia 17

Este es un ejemplo. La izquierda de la pantalla muestra dos tiros al lado 100 100
cuadrados salpicada con el "gris12 " patrn, pero el de la derecha es el cuadrado
verticalmente en un pxel. La lnea de color negro en el centro de theigure se dibu
ja a lo largo de la frontera de la twoigures.
La segunda captura de pantalla es el mismo, salvo que los dos 100 100 cuadrados t
ienen sus patrones tipo gotel.
En la prctica, esto se plantea en dos situaciones. La alineacin de grandes zonas s
tipple es controlada por una opcin namedoffset . Forigures con stipple contornos,
theoutlineoffset opcin controla su alineacin.
Ambas opciones tienen valores de cada una de estas formas:
"x,y": El ofset el tipo gotel thisxandyvalue patrones de relacin con la ventana de
nivel superior o en el lienzo de su origen.
' #x,y": Para los objetos en el lienzo, utilice ofsetxandyrelative a la ventana
de nivel superior.
Los ct.NE ,tk.SE ,tk.SW ,tk.NW: Alinear la esquina de la punteada con la esquina
correspondiente del objeto contenedor. Por ejemplo, los conocimientos tradiciona
les.NE significa que la esquina superior izquierda del patrn tipo gotel comparte e

nteramente con la esquina superior izquierda de la zona que se stipple.


Los conocimientos tradicionales.N ,tk.E ,tk.S ,tk.W: Alinear el patrn tipo gotel co
n el centro de uno de los lados del objeto contenedor.
Por ejemplo, los conocimientos tradicionales.E significa que el centro de la pun
teada patrn coincidir con el centro de la parte derecha de la zona de stipple.
Los conocimientos tradicionales.CENTRO: Alinear el centro del patrn tipo gotel con
el centro del objeto contenedor.
6. Manejo de excepciones
la excepcin planteada por ms errores de programacin istk.TclError .
7. Una widget
para crear un botn en una ventana de nivel superior o bastidor namedparent :
w=tk.Button( parent,option=value,...)
El constructor devuelve el newButton widget. Las opciones incluyen:
Cuadro 5.widget de Botn opciones
activebackground color de fondo cuando el botn est bajo el cursor.
activeforeground color de primer plano cuando el botn est bajo el cursor.
ancla Dnde se encuentra posicionado el texto del botn. Consulte la Seccin 5.5 , "Un
- chors" (p. 12). Por ejemplo, anchor=tk.NE, colocar el texto en la esquina sup
erior derecha del botn.
18 8.5 Referencia Tkinter Nuevo Mxico Tech Computer Center

bdorborderwidth Ancho del borde alrededor de la parte exterior del botn; vase la s
eccin 5.1 , "Di- ase" (p. 9). El valor predeterminado es de dos pxeles.
bgorbackground color de fondo normal.
mapa Nombre de uno de los mapas de bits a mostrar en el botn (en lugar de texto),
mando funcin o mtodo al que se llama cuando se hace clic en el botn.
cursor selecciona el cursor para que aparezca cuando el ratn se encuentra sobre e
l botn
predeterminado tk.LO NORMAL es el valor predeterminado; usetk.desactivada si el
botn est inicialmente desactivada (es decir, atenuado, no responde a los clics del
mouse (ratn).
disabledforeground color de primer plano utilizado cuando el botn est desactivado.
fgorforeground Normal color del fondo (texto).
fuente Texto fuente que se utiliza para el botn de la etiqueta de
altura altura del botn en lneas de texto (texto de botones) o pixels (en las imgene
s).
highlightbackground Color del foco resaltar cuando el widget no No tiene el foco
.
highlightcolor El color del foco resaltar cuando el widget tiene foco.
highlightthickness Espesor de la atencin.
de imagen que se va a mostrar en el botn (en lugar de texto).
justificar cmo mostrar varias lneas de texto:tk.IZQUIERDA a la izquierda de justif
icar cada una de las lneas; los conocimientos tradicionales.en el centro; ortk.DE
RECHO a derecho de justificar.
overreliefThe estilo de socorro para ser utilizado, mientras que el ratn en el bo
tn; el valor predeterminado de socorro istk.PLANTEADAS". Vase la Seccin 5.6 , "Soc
orro estilos" (p. 12),
padx acolchado adicional izquierda y derecha del texto. Vase la Seccin 5.1 , "dime
nsiones" (p. 9) Para los valores posibles para el relleno.
pady acolchado adicional por encima y por debajo del texto. El
socorro el socorro Speciies tipo para el botn (vase la seccin 5.6 , "Socorro estilo
s" (p. 12).
El valor por omisin de socorro istk.PLANTEADAS".
repeatdelaySeerepeatinterval , a continuacin.
intervalo de repeticin Normalmente, un buttonires slo una vez cuando el usuario su
elta el botn del ratn.
Si desea que el botn reperto- rio a intervalos regulares, siempre y cuando el ratn

se mantiene presionado el botn, establezca esta opcin a un nmero de milisegundos q


ue se va a utilizar entre repeticiones, y establecer therepeatdelay a el nmero de
milisegundos que se debe esperar antes de empezar a repetir. Por ejemplo, si es
pecifica"repeatdelay=500, intervalo de repeticin=100 " el botn willire despus de me
dio segundo, y cada dcima de segundo despus, hasta que el usuario suelta el botn de
l mouse. Si el usuario no mantenga el botn del ratn pulsado en leastrepeatdelay mi
li- segundos, el botn willire normalmente.
estado establecer esta opcin totk.DISABLED a gris en el botn y lo ajeno sponsive.
Tiene el valuetk.activa cuando el ratn est sobre l. Por defecto es tk.NORMAL .
takefocus normalmente, foco visita botones (consulte la Seccin 53, "Focus: enruta
miento entrada de teclado" (p. 155), y un carcter de espacio acta como el mismo qu
e el de un clic del ratn, "empuja" el botn. Puede configurar thetakefocus opcin a c
ero para evitar centrarse en visitar el botn.
New Mexico Tech Computer Center Tkinter 8,5 referencia 19

texto Texto que se muestra en el botn. Uso de nuevas lneas para mostrar varias lnea
s de texto.
textvariable una instancia ofStringVar() que se asocia con el texto de este botn.
Si el cambio de variable, el nuevo valor se muestra en el botn.
Consulte la Seccin 52, "variables de Control: los valores que sustentan los widge
ts" (p. 153),
subrayado por defecto es 1, lo que significa que ningn personaje de el texto en e
l botn aparecer subrayado. Si no negativos, el texto correspondiente ser en carcter
de lneas. Por ejemplo, destacar=1 se har hincapi en el segundo carcter del texto del
botn.
width ancho del botn en las cartas (si mostrar texto) o pixels (si mostrar una im
agen).
wraplengthIf este valor se establece en un nmero positivo, las lneas de texto se e
nvuelve toit en esta longitud. Para ver los valores posibles, consulte la Seccin
5.1 , "dimensiones" (p. 9).
Mtodos delbotn objetos:
.flash() hace que el botn tolash varias veces entre activo y colores normales. De
ja el botn en el estado en que se encontraba originalmente. Se ignora si el botn e
st desactivado.
.Invoke() llama al botn"scommand devolucin de llamada, y devuelve lo que devuelve.
No tiene efecto si el botn est desactivado o no hay devolucin de llamada.
8. Widget TheCanvas
un lienzo es un rea rectangular para dibujar imgenes u otros diseos complejos. En e
lla se pueden realizar grficos, texto, widgets, o marcos. Consulte las siguientes
secciones para los mtodos que crear objetos en los lienzos:
.create_arc() : un trozo de una elipse. Consulte la Seccin 8.7 , "Lienzo objetos
de arco" (p. 28).
.Create_bitmap(): Una imagen como un mapa de bits. Vase la seccin 8.8 , "Lienzo ob
jetos bitmap" (p. 29).
.Create_image() : Una imagen grfica. Vase la seccin 8.9 , "Lienzo objetos de imagen
" (p. 30).
.Create_line() : uno o ms segmentos de lnea. Vase la seccin 8.10 , "Lienzo objetos d
e lnea" (p. 30).
.Create_oval() : Una elipse; tambin de dibujando crculos, que son un caso especial
de elipse.
Vase la seccin 8.11 , "Lienzo oval objetos" (p. 32).
.Create_polygon() : un polgono. Vase la seccin 8.12 , "Lienzo objetos de polgono" (p
. 33).
.Create_rectangle() : un rectngulo. Vase la seccin 8.13 , "Lienzo objetos de rectngu
lo" (p. 35).
.Create_text() : anotacin de texto. Consulte la seccin 8,14 , "Lienzo objetos de t
exto" (p. 37).

.Create_window() : UNA ventana rectangular. Vase la seccin 8.15 , "ventana del lie
nzo objetos" (p. 38).
Para crear aCanvas objeto:
w=tk.Canvas( parent,option=value,...)
El constructor devuelve el newCanvas widget. Las opciones incluyen:
8,5 Tkinter 20 referencia Nuevo Mxico Tech Computer

mesa de centro 6.Canvas widget opciones


bdorborderwidth Ancho del borde alrededor de la parte exterior del lienzo; vase l
a seccin 5.1 , "Di- ase" (p. 9). El valor predeterminado es de dos pxeles.
bgorbackground color de fondo de la tela. Por defecto es un gris claro, " #E4E4E
4 ".
closeenough a flote que speciies cmo cerrar el ratn debe ser un tema que se relaci
onaran dentro de ella. Por defecto es 1.0 .
limitar Si es true (el valor predeterminado), el lienzo no se pueden desplazar f
uera de thescrollre- torios (vase ms abajo).
cursor Cursor utilizado en el lienzo. Consulte la Seccin 5.8 , "Cursores" (p. 13)
.
altura tamao del lienzo en la dimensin Y. Consulte la Seccin 5.1 , "dimensiones" (p
. 9).
highlightback- Color de las focus resaltar cuando el widget no tiene el foco. Vas
e Sec- tierra- 53, "Focus: enrutamiento entrada de teclado" (p. 155).
highlightcolor Color mostrado en el foco resaltado.
highlightthickness Espesor de la atencin. El valor predeterminado es 1.
alivio estilo de la tela. Istk predeterminado.PLANA . Vase la Seccin 5.6 , "Socorr
o estilos" (p. 12).
scrollregion una tupla(w,n,e,s) que deines sobre cmo gran un rea del lienzo se pue
den desplazar, wherewis el lado izquierdo,nel superior,el lado derecho, andsthe
bot- tom.
selectbackground El color de fondo que se va a usar con los elementos selecciona
dos.
selectborderwidth el ancho del borde alrededor de los elementos seleccionados.
selectforeground El color de primer plano para utilizar mostrar los elementos se
leccionados.
takefocus normalmente, focus (vase la Seccin 53, "Focus: enrutamiento entrada de t
eclado" (p. 155) Se realizar un ciclo a travs de este widget con la tecla tab slo s
i hay enlaces de teclado que se le (vase la Seccin 54, "Eventos" (p. 157) Para una
descripcin de los principales enlaces de junta). Si la opcin est establecida en 1
, el enfoque ser siempre visitar este widget.
Lo de "para obtener el comportamiento predeterminado
ancho de la lona en la dimensin X. Consulte la Seccin 5.1 , "dimensiones" (p. 9).
xscrollincrement normalmente, lienzos se pueden desplazar horizontalmente en cua
lquier posicin. Usted puede obtener este comportamiento settingxscrollincrement a
cero. Si establece el valor de esta opcin en una dimensin positiva, el lienzo slo
pueden ser colocados en forma de mltiplos de esa distancia, y el valor se utiliza
para el desplazamiento de unidades desplazamiento, como cuando el usuario hace
clic en las flechas situadas en los extremos de una barra de desplazamiento. Par
a obtener ms informacin sobre unidades desplazamiento, vase el captulo 22, "TheScrol
lbar-" (p. 74).
xscrollcommand Si la tela es desplazable, establezca esta opcin en el.set() del h
ori- zontales scrollbar.
yscrollincrement likexscrollincrement obras , sino que gobierna movimiento verti
cal.
yscrollcommand Si la tela es desplazable, esta opcin debe ser el.set() mtodo de la
barra de desplazamiento vertical.
New Mexico Tech Computer Center Tkinter 8,5 referencia 21

8.1 .Lienzo las coordenadas


puesto que el lienzo puede ser ms grande de la ventana, y est equipado con barras
de desplazamiento para mover el lienzo alrededor de la ventana, hay dos sistemas
de coordenadas para cada lienzo:
La ventana las coordenadas de un punto son relativas a la esquina superior izqui
erda del rea de la pantalla donde aparece el lienzo.
El lienzo las coordenadas de un punto son relativas a la esquina superior izquie
rda de la lona.
8.2 . TheCanvas mostrar lista
La lista de visualizacin se refiere a la secuencia de todos los objetos en el lie
nzo, de fondo (la parte "inferior" de la lista de visualizacin) en primer plano (
la "superior" ).
Si los dos objetos se superponen, el uno encima del otro en la lista de visualiz
acin es la ms cercana al primer plano, que se publicar en la zona de superposicin y
oscuro al que se muestra a continuacin. De forma predeterminada, los nuevos objet
os se crean siempre en la parte superior de la lista de visualizacin (y, por ende
, en la parte delantera de todos los dems objetos), pero se puede cambiar el orde
n de la lista de visualizacin.
8.3 .Objeto Canvas id
el ID. de objeto de un objeto en el lienzo es el valor devuelto por el construct
or para el objeto. Todos los valores ID de objeto son nmeros enteros sencillos, y
el ID. de objeto de un objeto es nico dentro de ese lienzo.
8.4 .Lienzo etiquetas
una etiqueta es una cadena que se puede asociar con objetos en el lienzo.
Una etiqueta puede ser asociado con cualquier nmero de objetos en el lienzo, incl
uyendo el cero.
Un objeto puede tener cualquier nmero de etiquetas asociadas a ella, incluyendo e
l cero.
Las etiquetas tienen muchos usos. Por ejemplo, si se est dibujando un mapa en un
lienzo y hay objetos de texto en las etiquetas de los ros, se podra adjuntar la et
iqueta'riverLabel" a todos los objetos de texto. Esto le permitir realizar operac
iones en todos los objetos con la etiqueta, como cambiar su color o eliminarlos.
8.5 .CanvastagOrId
AtagOrId argumento argumentos speciies uno o ms objetos en el lienzo.
Si atagOrId argumento es un nmero entero, que es tratado como un identificador de
objeto, y que slo se aplica al objeto nico con esa ID. Vase la seccin 8.3 , "Lienzo
id de objeto" (p. 22).
Si el argumento es una cadena, que se interpreta como una etiqueta, y selecciona
todos los objetos que tienen la etiqueta (si existen). Consulte la Seccin 8.4 ,
"Lienzo etiquetas" (p. 22).
8.6 . Mtodos onCanvas widgets
AllCanvas objetos admiten estos mtodos:
.addtag_above( newTag,tagOrId) concede una nueva etiqueta para el objeto justo e
ncima del uno propsitos especi cos bytagOrId en la lista de la pantalla. La newTag
argumento es la etiqueta que desea adjuntar, como una cadena.
22 8.5 Referencia Tkinter Nuevo Mxico Tech Computer Center

.addtag_all( newTag) atribuye la tagnewTag a todos los objetos en el lienzo.


.Addtag_below( newTag,tagOrID) concede una nueva etiqueta para el objeto justo d
ebajo de los propsitos especi cos bytagOrId uno en la lista de la pantalla. La new
Tag argumento es una cadena de caracteres de la etiqueta.
.Addtag_closest( newTag,x,y,halo=None, start=None) agrega una etiqueta en el obj
eto ms cercano a la pantalla coordenada (x,y). Si hay dos o ms objetos a la misma
distancia, el ms alto en la lista de visualizacin est seleccionada.

Utilice thehalo argumento a favor del aumento es el tamao del punto. Por ejemplo,
un valor de 5, tratar cualquier objeto dentro de 5 pxeles de (x,y) superpuestos.
Si un identificador de objeto se pasa en elinicio argumento, este mtodo etiquetas
la mayor calificacin belowstart objeto que est en la lista de la pantalla.
.Addtag_enclosed( newTag,x1,y1,x2,y2) Aadir tagnewTag a todos los objetos que se
encuentran completamente dentro del rectngulo cuya esquina superior izquierda (x1
,y1) y cuya esquina inferior derecha es (x2,y2).
.Addtag_overlapping( newTag,x1,y1,x2,y2) como el mtodo anterior, pero repercute t
odos los objetos que comparten al menos un punto con el rectngulo dado.
.Addtag_withtag( newTag,tagOrId) Agrega tagnewTag al objeto u objetos propsitos e
speci cos bytagOrId .
.Bbox(tagOrId=None) Devuelve una tupla rectngulo que encierra todos los objetos p
ropsitos especi cos por (x1, y1, x2, y2) en el que se describe un tagOrId . Si el
argumento es omitido, devuelve un rectngulo que rodea todos los objetos en el lie
nzo. La esquina superior izquierda del rectngulo es (x1, y1) y la esquina inferio
r derecha es (x2, y2).
.Canvasx( pantalla del televisorx puede,gridspacing=None) traduce una ventana x
coordinatescreenx coordenadas a un lienzo. Ifgridspacing el lienzo coordinar se
redondea al mltiplo ms cercano de ese valor.
.Canvasy( screeny,gridspacing=None) traduce una ventana y coordinatescreeny coor
denadas a un lienzo. Ifgridspacing el lienzo coordinar se redondea al mltiplo ms c
ercano de ese valor.
.coords(tagOrId,x0,y0,x1,y1, ... ,xn,yn) Si se pasa slo thetagOrId argumento, dev
uelve una tupla de las coordenadas de los objetos ms baja o slo propsitos especi cos
de ese argumento. El nmero de coordenadas depende del tipo de objeto. En la mayo
ra de los casos, ser una 4-tupla (x1, y1, x2, y2) en el que se describe el cuadro
delimitador del objeto.
Puede mover un objeto al pasar en nuevas coordenadas.
.Dchars(tagOrId,primera=0,=primero) Elimina los caracteres de un elemento de tex
to o elementos. Caracteres betweenfirst andlast inclusive de leted, donde esos v
alores pueden ser ndices enteros o la cadena "final" significa el final del texto
. Por ejemplo, para un canvasCand un itemI,C. dchars(I,1,1)se retire el segundo
carcter.
.Delete(tagOrId) Elimina el objeto u objetos seleccionados bytagOrId . No se con
sidera un error si no hay ningn elemento coincide con tagOrId .
.Dtag(tagOrId, tagToDelete) Elimina la etiqueta propsitos especi cos bytagToDelete
de el o los objetos propsitos especi cos bytagOrId .
New Mexico Tech Computer Center Tkinter 8,5 referencia 23

.find_above(tagOrId) devuelve el nmero de identificacin del objeto justo por encim


a del objeto propsitos especi cos bytagOrId . Si varios objetos coinciden, se obti
ene la ms alta. Devuelve una tupla vaca si le pasa el ID de objeto del objeto del
ms alto.
.Find_all() devuelve una lista de los nmeros de ID. de objeto todos los objetos e
n el lienzo, de menor a mayor.
.Find_below( tagOrId) devuelve el ID de objeto del objeto justo por debajo del u
no propsitos especi cos bytagOrId . Si varios objetos, obtenga el menor. Devuelve
una tupla vaca si le pasa el id. de objeto de las ms bajas.
.Find_closest( x,y,halo=None, start=None) Devuelve una tupla singleton que conti
ene el identificador de objeto del objeto ms cercano al punto(x,y). Si no hay ca
lificacin objetos, devuelve una tupla vaca.
Utilice thehalo argumento a favor del aumento es el tamao del punto. Por ejemplo,
halo=5, tratar cualquier objeto dentro de 5 pxeles de(x,y)superpuestos.
Si un identificador de objeto se pasa como argumento elinicio, este mtodo devuelv
e el objeto mayor calificacin que es belowstart en la lista de la pantalla.
.Find_enclosed( x1,y1,x2,y2) devuelve una lista de los Id. de objeto de todos lo
s objetos que se presentan completamente dentro del rectngulo cuya esquina superi

or izquierda se(x1,y1) y esquina inferior derecha(x2,y2).


.Find_overlapping( x1,y1,x2,y2) como el mtodo anterior, pero devuelve una lista d
e los identificadores de objeto de todos los objetos que comparten al menos un p
unto con el rectngulo dado.
.Find_withtag( tagOrId) Devuelve una lista de los identificadores de objeto del
objeto u objetos propsitos especi cos bytagOrId .
.Focus(tagOrId=None) Mueve el foco al objeto propsitos especi cos bytagOrId . Si h
ay varios objetos, desplaza el foco a la primera uno en la lista de visualizacin
que permite una insercin cursor. Si no hay elementos cualificados, o el lienzo no
tiene foco, no se mueva.
Si el argumento es omitido, devuelve el identificador del objeto que tiene el fo
co, o "si ninguno de ellos lo hace.
.Gettags( tagOrId) IftagOrId es un identificador de objeto, devuelve una lista d
e todas las etiquetas asociadas con ese objeto. Si el argumento es una etiqueta,
devuelve todas las etiquetas para las tarifas ms bajas objeto que tiene la etiqu
eta.
.Icursor( tagOrId,index) suponiendo que el elemento seleccionado permite insercin
de texto y tiene el foco, establece el cursor de insercin index , que puede ser
un ndice de enteros o la cadena'final". De lo contrario no tiene efecto.
.Index(tagOrId,especificador ) Devuelve el ndice de entero del givenspecifier el
elemento de texto propsitos especi cos bytagOrId (el ms bajo que iftagOrId speciies
varios objetos). El valor de retorno es la posicin correspondiente es un nmero e
ntero, con la habitual convencin Python, en donde 0 es la posicin de antes theirst
carcter.
Thespecifier argumento puede ser cualquiera de los siguientes:
los conocimientos tradicionales.INSERT , para volver la posicin actual del cursor
insercin.
Los conocimientos tradicionales.END , para devolver la posicin despus del ltimo carct
er del tema.
Los conocimientos tradicionales.SEL_FIRST , para devolver la posicin del inicio de
la actual seleccin de texto. Tkinter, subir atk.TclError excepcin si el elemento
de texto no contiene en la actualidad la seleccin del texto.
24 8.5 Referencia Tkinter Nuevo Mxico Tech Computer Center

tk.SEL_LAST , para volver a la posicin despus de la final de la actual seleccin de t


exto, o elevar los conocimientos tradicionales.TclError si el elemento no contie
ne en la actualidad la seleccin.
si las coordenadas estn a la derecha o debajo de la partida, el mtodo devuelve el n
dice del final del tema. ;0 una cadena de la forma" @x,y", para volver a colocar
el carcter del personaje con canvas las coordenadas (x,y). Si estas coordenadas
estn por encima o a la izquierda del elemento de texto, el mtodo devuelve
.insert(tagOrId especificador" ,texto) Inserta el givenstring en el o los objeto
s propsitos especi cos bytagOrId , en la posicin dada por thespecifier argumento.
Thespecifier valores pueden ser:
cualquiera de los keywordstk.INSERT ,tk.FINAL ,tk.SEL_FIRST , ortk.SEL_LAST . Co
nsulte la de- cripcin de elndice mtodo anterior para la interpretacin de estos cdigos
.
La posicin de la insercin que desee, utilizando la convencin de Python normal posic
iones en las cadenas.
.Itemcget( tagOrId,opcin), se devuelve el valor del dado conigurationoption en el
objeto seleccionado (o el menor objeto si tagOrId speciies ms de uno). Esto es
similar a la del cget() mtodo de Tkinter objetos.
.Itemconfigure( tagOrId,option,...) Si nooption se proporcionan argumentos, devu
elve un diccionario cuyas teclas son las opciones del objeto propsitos especi cos
bytagOrId (el ms bajo, iftagOrId speciies varios objetos).
Para cambiar la configuracin de la opcin propsitos especi cos tema, alimentacin uno o
ms argumentos de palabra clave=valor la opcin habilitar firmas digitales .

.Move(tagOrId,xAmount,yAmount) mueve los elementos propsitos especi cos bytagOrId


por addingxAmount a sus coordenadas x andyAmount a sus coordenadas y.
.Postscript( serie,...) genera un archivo PostScript encapsulado representacin de
l lienzo del contenido actual. Las opciones incluyen:
Uso de archivos de color de salida en color, "gris" para la escala de grises, o
"mono" de blanco y negro.
archivo Si se entregan, nombres aile donde el PostScript ser escrita. Si no se da
esta opcin, el PostScript es devuelta como una cadena de
altura cmo gran parte de los Y tamao del lienzo para imprimir. Por defecto es visi
ble toda la altura del lienzo.
girar si es falso, la pgina se representa en orientacin vertical; si es verdad, en
el modo paisaje.
x Izquierda lienzo coordinar de la zona de impresin.
y superior de lienzo coordinar el rea de impresin.
widthHow gran parte de la X tamao del lienzo para imprimir. Por defecto es el anc
ho visible de la lona.
.Escala(tagOrId,xoffset,yoffset,xscale, yscale) Escala todos los objetos de acue
rdo a su distancia de un punto P= (xoffset ,yoffset ). Los factores de escala x
scale andyScale se basan en un valor de 1.0 , lo que significa que no escala. Ca
da uno de los puntos de los objetos seleccionados bytagOrId se mueve de forma qu
e la distancia x de P se multiplica byxScale y su distancia y se multiplica byyS
cale .
Este mtodo no podr cambiar el tamao de un elemento de texto, pero puede moverlo.
New Mexico Tech Computer Center Tkinter 8,5 referencia 25

.scan_dragto( x,y,ganar =10.0 ) Consulte la.scan_mark() mtodo que se explica a co


ntinuacin.
.Scan_mark( x,y) Este mtodo se utiliza para aplicar desplazamiento rpido de un lie
nzo. La intencin es que el usuario se pulse y mantenga pulsado el botn del ratn y,
a continuacin, mueva el ratn hacia arriba para escanear (desplazamiento) el lienzo
horizontal y verticalmente en esa direccin en un ritmo que depende de que tan le
jos el ratn se ha movido desde el botn del ratn se pisa.
Para implementar esta caracterstica, de enlazar el mouse button-down caso a un co
ntrolador que llama scan_mark( x,y)wherexandyare las actuales coordenadas del mo
use. Obligar a la <Motion>Un controlador de eventos que, suponiendo que el botn d
el ratn sigue sin funcionar, callsscan_dragto( x,y,ganancia) wherexandyare las ac
tuales coordenadas del mouse.
Thegain argumento controla la velocidad de exploracin. Este argumento tiene un va
lor predeterminado de 10.0 . Utilizar nmeros ms grandes para un escaneo ms rpido.
.Select_adjust( oid,especificador ) Ajusta los lmites de la actual seleccin de tex
to para incluir la posicin dada por thespecifier argumento, el elemento de texto
con el objeto IDoid .
La seleccin actual ancla tambin se ajusta a los propsitos especi cos. Para una discu
sin de la seleccin ancla, consulte el mtodo canvasselect_from a continuacin.
Para los valores ofspecifier canvasinsert , consulte el mtodo anterior.
.Select_clear() elimina la actual seleccin de texto, si est configurado. Si no hay
ninguna seleccin actual, no hace nada.
.Select_from( oid,especificador ) Este mtodo establece la seleccin fijar en la pos
icin dada por thespecifier argumento, en el elemento de texto cuyo ID de objeto e
s dado byoid .
El texto seleccionado actualmente en el lienzo se propsitos especi cos dado por tr
es posiciones: la posicin de arranque, la posicin de final, y la seleccin ancla, qu
e puede estar en cualquier lugar dentro de las dos posturas.
Para cambiar la posicin del texto seleccionado actualmente, utilizar este mtodo en
combinacin con estas- lect_adjust ,select_from , andselect_to lienzo mtodos (q.v.
).
.Select_item() si hay una corriente seleccin de texto en este lienzo, devolver el

ID de objeto del elemento de texto que contiene la seleccin. Si no hay ninguna s


eleccin actual, este mtodo returnsNone .
.Select_to( oid,especificador Este mtodo cambia la seleccin de texto actual para q
ue incluya el ancla y seleccionar la posicin dada byspecifier dentro del elemento
de texto cuyo ID de objeto es dado byoid . Para los valores ofspe- cifier canva
sinsert , consulte el mtodo anterior.
.Tag_bind( tagOrId,secuencia=None, funci=None, agregar=None) se une a los objeto
s hechos en el lienzo. Para el objeto u objetos seleccionados bytagOrId , asocia
el handlerfunction con el eventsequence . Si aparecer argumento es una cadena em
pezando por' + ', el nuevo enlace est aadido a los enlaces de la givensequence , d
e lo contrario, el nuevo enlace sustituye a la givensequence .
Para obtener informacin general sobre enlaces de sucesos, consulte la Seccin 54, "
Eventos" (p. 157).
Tenga en cuenta que los enlaces se aplican a los elementos que tienen esta etiqu
eta en el momento de thetag_bind llamada al mtodo. Si las etiquetas estn ms alejada
s de las partidas, los enlaces se mantendr sobre esos temas. Si la etiqueta que e
specifique se aplica a los elementos que no tienen la etiqueta cuando calledtag_
bind , que la unin no se aplicar a los nuevos artculos etiquetados.
26 8.5 Referencia Tkinter Nuevo Mxico Tech Computer Center

.tag_lower( tagOrId,belowThis ) Mueve el objeto u objetos seleccionados bytagOrI


d dentro de la lista de visualizacin hasta la posicin justo por debajo del primer
o nico objeto specied por la etiqueta o IDbelowThis .
Si hay varios elementos con tagtagOrId , su orden de apilamiento se conserva.
Este mtodo no altera lienzo elementos de la ventana. Para cambiar un elemento de
la ventana de orden de apilamiento, uso alower mtodo la extraccin o instalacin de l
a ventana.
.Tag_raise( tagOrId,aboveThis ) Mueve el objeto u objetos seleccionados bytagOrI
d dentro de la lista de visualizacin hasta alcanzar una posicin ligeramente por en
cima del primer o nico objeto specied por la etiqueta o IDaboveThis .
Si hay varios elementos con tagtagOrId , su orden de apilamiento se conserva.
Este mtodo no altera lienzo elementos de la ventana. Para cambiar un elemento de
la ventana de orden de apilamiento, uso alower mtodo la extraccin o instalacin de l
a ventana.
.Tag_unbind( tagOrId,secuencia,funcId=None) Elimina los enlaces para handlerfunc
Id eventsequence y el objeto canvas de objetos o propsitos especi cos bytagOrId .
Consulte la Seccin 54, "Eventos" (p. 157).
.Tipo(tagOrId) devuelve el tipo del objeto irst o slo propsitos especi cos bytagOrI
d . El valor devuelto ser uno de los strings'arc', 'mapa', 'imagen', 'lnea' , 'ova
l', 'polgono' , 'rectngulo' , 'texto', o 'ventana' .
.Xview(tk.MOVETO, fraccin) Este mtodo se desplaza el lienzo con respecto a su imag
en, y se destina para el enlace a "opcin de un desplazamiento. El lienzo se despl
aza horizontalmente a una posicin dada byoffset , donde 0.0 se mueve el lienzo a
su posicin ms a la izquierda y derecha 1.0 a su posicin.
.Xview(tk.SCROLL, n,lo que) Este mtodo mueve el lienzo izquierda o a la derecha:
thewhat argumento speciies cunto para mover y puede ser eithertk.UNIDADES ortk.LA
S PGINAS , andntells cuntas unidades para mover el lienzo a la derecha respecto a
su imagen (o a la izquierda, si es negativo).
La magnitud de la medida fortk.LAS UNIDADES est dada por el valor de la opcin lien
zo'sxscrollincrement; vase la seccin 22, "TheScrollbar widget" (p. 74).
Para los movimientos bytk.PGINAS, nis multiplicado por nueve dcimas partes de la a
nchura de la tela.
.Xview_moveto( fraccin) Este mtodo se desplaza el lienzo de la misma manera que.xv
iew(tk.MOVETO, fraccin).
.Xview_scroll( n,qu) mismo que.xview(tk.SCROLL, n,qu).
.Yview(tk.MOVETO, fraccin) El desplazamiento vertical equivalente of.xview(tk.MOV
ETO,... ).

.Yview(tk.SCROLL, n,qu) El desplazamiento vertical equivalente of.xview(tk.SCROLL


,... ).
.Yview_moveto( fraccin) El desplazamiento vertical equivalente.xview() .
.Yview_scroll( n,lo que) el desplazamiento vertical de equivalentes.xview() , .x
view_moveto() , y.xview_scroll() .
New Mexico Tech Computer Center Tkinter 8,5

8,7 referencia 27 .Lienzo objetos de arco


un objeto de arco en un lienzo, en su forma ms general, es una forma de cua lamina
r de una elipse. Esto incluye todo elipses y crculos como casos especiales. Vase l
a seccin 8.11 , "Lienzo oval objetos" (p. 32) Para obtener ms informacin sobre la g
eometra de la elipse.
Para crear un objeto de arco en un canvasC, utilice:
id=C. create_arc( x0,y0,x1,y1,option,...)
El constructor devuelve el ID de objeto del nuevo objeto de arco en canvasC.
Punto (x0,y0) es la esquina superior izquierda y (x1,y1) la esquina inferior der
echa de un rectngulo en el que la elipse isit. Si el rectngulo es cuadrado, se obt
iene un crculo.
Las distintas opciones son:
Cuadro 7.Canvasarc
activedash opciones Estas opciones se aplican cuando el arco se encuentra en the
tk.estado activo, es decir, cuando el ratn activefill est por encima del arco. Por
ejemplo, opcin theactivefill speciies el color del interior cuando el arco est ac
tivo. Para especificar los valores de opcin, activeoutline seedash ,relleno ,pres
entacion ,outlinestipple ,tipo gotel, para permitir una rehabilitacin dentaria pos
terior , activeoutlinestipple respectivamente.
activestipple activewidth
dash modelo de guin para el esbozo. Consulte la Seccin 5.13 , "Dash" (p. 17).
dashoffset ofset modelo de guin para el esbozo. Consulte la Seccin 5.13 , "Dash- s
onales" (p. 17).
disableddashThese opciones se aplican cuando el arco'sstate istk.DISCAPACITADOS
.
disabledfill disabledoutline
disabledoutlinestipple
disabledstipple disabledwidth
medida ancho del corte en grados. El sector comienza en el ngulo de la opcin "inic
iar" y se extiende la izquierda forextent grados.
llenar de forma predeterminada, el interior de un arco es transparente, andfill=
" se seleccionar este comportamiento. Tambin puede configurar esta opcin en cualqui
er color y en el interior del arco beilled con ese color.
offset ofset patrn tipo gotel en el interior del arco. Consulte la Seccin 5.14 , "p
atrones de tipo gotel" (p. 17).
resumen el color del borde alrededor de la parte exterior del sector. Por defect
o es negro.
outlineoffset patrn tipo gotel ofset para el esbozo. Consulte la Seccin 5.14 , "pat
rones de tipo gotel" (p. 17).
outlinestipple Si se usa la opcin marcar esta opcin speciies utiliza un mapa de la
frontera. Predeterminado es el negro, y que puede ser propsitos especi cos por se
ttingoutlinestipple=" .
28 8.5 Referencia Tkinter Nuevo Mxico Tech Computer Center

inicio ngulo inicial para el sector, en grados, medido a partir de sentido +x. Si
se omite, se obtiene toda la elipse.
estado Esta opcin istk.NORMAL por defecto. Se puede establecer totk.HIDDEN para h

acer el arco invisible o totk.discapacitados a gris el arco y que no responde a


los eventos.
stipple un mapa de bits que indica cmo la interiorill del arco se stipple.
Defecto isstipple=" (slido). Probablemente querr algo como tipo= "gris25 ". No t
iene efecto unlessfill se ha establecido en color.
El valor predeterminado es estilo para dibujar todo el arco; usestyle=tk.PIESLIC
E para este estilo. Para dibujar slo el arco circular en el borde de la porcin, us
ar style=tk.ARCO . Para dibujar el arco circular y el acorde (la lnea recta que u
ne los extremos del arco), usestyle=tk.ACORDE .
las etiquetas si una sola cadena, el arco se califica con esa cadena. Utilizar u
na tupla de las cadenas para etiquetar el arco con varias etiquetas. Consulte la
Seccin 8.4 , "Lienzo etiquetas" (p. 22).
width de la frontera alrededor de la parte exterior del arco. Por defecto es 1 p
ixel.
8.8 .Lienzo objetos bitmap
un objeto bitmap en el lienzo se muestra como dos colores, el color de fondo (pa
ra 0 valores de datos) y el color del primer plano (para 1 valores).
Para crear un objeto de mapa de canvasC, utilice:
id=C. create_bitmap()( x,y,*options...)
que devuelve el nmero de ID entero de la imagen objeto de lienzo.
Thexandyvalues son el punto de referencia que speciies donde se coloca el mapa.
Las opciones incluyen:
Tabla 8.Canvas mapa
activebackground opciones Estas opciones especifican rock androll" produjo ,mapa
activebitmap andforeground valores cuando el mapa est activa, es decir, cuando e
l ratn se encuentra sobre el mapa de bits.
activeforeground
ancla el mapa de bits se colocan en el punto (x,y). El valor predeterminado es
una- chor=tk.CENTRO, es decir, que el mapa est centrado en la (x,y).
Consulte la Seccin 5.5 , "anclajes" (p. 12) En el caso de los valores de opcin var
iousanchor.
Por ejemplo, si usted specifyanchor=tk.NE , el mapa se coloca en una posicin que
permita que el punto (x,y) est ubicado en el noreste (parte superior derecha) esq
uina del mapa de bits.
backgroundThe color que aparecer donde hay 0 valores en el mapa de bits. El valor
predeterminado isbackground=" , lo que significa transparencia.
New Mexico Tech Computer Center Tkinter 8,5 referencia 29

mapa el mapa de bits en ser mostrado; vase la seccin 5.7 , "Mapas" (p. 12).
disabledbackground Estas opciones especifican los antecedentes, mapa de bits, y
el primer plano que se va a utilizar cuando el mapa disabledbitmap'sstate istk.D
ISABLED .
disabledforeground
foregroundThe color que aparece donde hay 1 valores en el mapa de bits. El valor
predeterminado isforeground= 'negro' .
estado De forma predeterminada, los elementos se crean lapolica=tk.NORMAL . Usetk
.DESACTIVAR para hacer el tema aparece atenuado y no responde a los eventos; use
tk.HIDDEN para que el elemento invisible.
las etiquetas si una sola cadena, el mapa de bits se etiquetan con esa cadena. U
tilizar una tupla de las cadenas para etiquetar el mapa de bits con varias etiqu
etas. Consulte la Seccin 8.4 , "Lienzo etiquetas" (p. 22).
8.9 .Lienzo objetos de imagen
para mostrar una imagen grfica en una canvasC, utilice:
id=C. create_image( x,y,option,...)
Este constructor devuelve el nmero de ID entero de la imagen objeto de lienzo.
La imagen se posiciona respecto al punto (x,y). Las opciones incluyen:
Cuadro 9.Canvasimage

Imagen opciones disponibles que se mostrar cuando el ratn est sobre el tema. Para e
specificar los valores de opcin, verimagen a continuacin.
ancla el valor predeterminado isanchor=tk.CENTRO , lo que significa que la image
n est centrada en la (x, y) posicin. Consulte la Seccin 5.5 , "anclajes" (p. 12) En
el caso de los posibles valores de esta opcin.
Por ejemplo, si usted specifyanchor=ct.S , la imagen se coloca en una posicin que
permita que el punto (x,y) se encuentra en el centro de la parte inferior (sur)
borde de la imagen.
disabledimage imagen que se muestra cuando el tema est inactivo. Para especificar
los valores de opcin, verimagen a continuacin.
imagen la imagen que se mostrar. Consulte la Seccin 5.9 , "Imgenes" (p. 14), para o
btener informacin acerca de cmo crear imgenes que se pueden cargar en lienzos,
normalmente, se crean objetos de imagen en statetk.NORMAL . Establezca este valo
r totk.DIS- TIVADO para que sea gris, de forma que no responden a las acciones d
el mouse. Si se establece en los conocimientos tradicionales.HIDDEN , el tema es
invisible.
etiquetas si una sola cadena, la imagen se etiqueta con esa cadena. Utilizar una
tupla de las cadenas para etiquetar la imagen con varias etiquetas. Consulte la
Seccin 8.4 , "Lienzo etiquetas" (p. 22).
8.10 .Lienzo objetos de lnea
en general, una lnea puede constar de cualquier nmero de segmentos conectados de e
xtremo a extremo y cada segmento puede ser recto o curvo. Para crear un lienzo e
n un objeto de lnea canvasC, uso:
id=C. create_line( x0,y0,x1,y1,... ,XN,YN,OPTION,...)
La lnea pasa a travs de la serie de puntos (x0,y0), (X1,Y1),... (Xn,yn). Las opci
ones incluyen:
8,5 Tkinter 30 referencia Nuevo Mxico Tech Computer

mesa de centro 10.Canvas


activedash opciones de la lnea Estas opciones especifican thedash ,relleno ,tipo
gotel para permitir una rehabilitacin dentaria posterior, valores que se van a uti
lizar activefill cuando la lnea est activa, es decir, cuando el mouse se sita sobre
l.
activestipple activewidth
flecha El valor por omisin es que la lnea no tienen puntas de flecha. Usearrow=tk.
EN PRIMER LUGAR para obtener una punta de flecha en el (x0,y0) final de la lnea.
Usearrow=tk.ltima en obtener una punta de flecha en el extremo. Usearrow=tk.tanto
para las puntas en ambos extremos.
arrowshape una tupla (d1,d2,d3), que describe la forma de las puntas de flecha.
Por defecto es (8,10,3 ) .
capstyle puede especificar la forma de los extremos de la lnea con esta opcin, con
sulte la seccin 5.12 , "estilos de combinacin y" (p. 16). La opcin por defecto ist
k.BUTT .
guin para producir una lnea discontinua, especifique esta opcin; vase la seccin 5.13
, "Dash- sonales" (p. 17). La apariencia predeterminada es una lnea slida.
dashoffset si especifica adash patrn, el valor predeterminado es iniciar los props
itos especi cos patrn al principio de la lnea. Thedashoffset opcin le permite especi
ficar que la puesta en marcha del modelo de guin se produce a una determinada dis
tancia despus del inicio de la lnea. Consulte la Seccin 5.13 , "Dash" (p. 17).
disableddash Thedash ,relleno , (tipo gotel), para permitir una rehabilitacin dent
aria posterior los valores que se utilizar cuando el elemento se encuentra en dis
abledfill thetk.estado deshabilitado.
disabledstipple disabledwidth
llenar el color a utilizar en el dibujo de la lnea. Por defecto isfill= 'negro' .
joinstyleFor lneas que se compone de ms de un segmento de lnea, esta opcin controla
la apariencia de la interseccin entre los segmentos. Para obtener ms informacin, vas
e Sec- 5,12 , "estilos de combinacin y" (p. 16). El estilo predeterminado isROUN

D stipple las lneas de compensacin, el propsito de esta opcin es para que coincida c
on el tema del patrn punteado con las de los objetos adyacentes. Consulte Seccin 5
.14, "stipple Coincidencia- sonales" (p. 17)..
buen si es verdadera, se dibuja la lnea como una serie de colectores cilindro-par
ablicos splinesitting el punto establecido. Por defecto es false, que representa
la lnea como un conjunto de segmentos rectos.
splinesteps thesmooth opcin si es cierto, cada curva spline se representa como un
a serie de segmentos de lnea recta. Opcin Thesplinesteps speciies el nmero de segme
ntos utilizados para aproximar cada seccin de la lnea; el valor predeterminado iss
plinesteps=12 .
New Mexico Tech Computer Center Tkinter 8,5 31

estado normalmente, se crean los elementos de lnea en statetk.NORMAL . Establezca


esta opcin en los ct.HIDDEN para que la lnea invisible y totk.DESACTIVAR para hac
er que merca- sponsive al ratn.
stipple stipple Para dibujar una lnea, establezca esta opcin en un mapa de bits qu
e speciies el patrn punteado, asstipple= 'gris25 ". Consulte la Seccin 5.7 , "Map
as" (p. 12) En el caso de los posibles valores.
etiquetas si una sola cadena, la lnea est marcada con esa cadena. Utilizar una tup
la de las cadenas para etiquetar la lnea con varias etiquetas. Consulte la Seccin
8.4 , "Lienzo etiquetas" (p. 22).
width anchura de la lnea. Por defecto es 1 pixel. Vase la Seccin 5.1 , "dimensiones
" (p. 9) Para los posibles valores.
8.11 .Lienzo objetos oval
valos, matemticamente, son elipses, incluyendo crculos como un caso especial. La el
ipse es un rectngulo deined por las coordenadas (x0,y0) de la esquina superior iz
quierda y las coordenadas (x1,y1) de un punto situado justo a las afueras de la
esquina inferior derecha.
El valo, coincidir con la parte superior e izquierda de las lneas de este cuadro, p
ero willit justo en el interior de la parte inferior y en el lado derecho.
Para crear una elipse en un canvasC, uso:
id=C. create_oval( x0,y0,x1,y1,option,...)
que devuelve el ID de objeto del nuevo objeto oval de canvasC.
Opciones de valos:
Cuadro 11.Canvasoval
activedash opciones Estas opciones especifican el modelo de guin, mal color, colo
r de contorno, contorno tipo gotel activefill patrn patrn tipo gotel, interior, y de
scribir los valores de ancho que el valo es de thetk.estado activo, es decir, cua
ndo el ratn se utiliza cuando activeoutline en el valo. Para valores de opcin, seed
ash ,relleno ,presentacion ,- activeoutlinestipple linestipple ,tipo gotel , para
permitir una rehabilitacin dentaria posterior .
32 8.5 Referencia Tkinter Nuevo Mxico Tech Computer Center

activestipple
activewidth
guin para producir un borde discontinuo alrededor del valo, establezca esta opcin e
n un modelo de guin; vase la seccin 5.13 , "Dash" (p. 17)
Cuando se utiliza thedash dashoffset opcin, thedashoffset opcin se utiliza para ca
mbiar la alineacin de la frontera modelo de guin relativo al valo. Consulte la Secc
in 5.14 , "patrones de tipo gotel" (p. 17).
disableddashThese opciones especifican la apariencia de la oficina oval cuando e
l tema'sstate disabledfillistk.DISABLED .
disabledoutline
disabledoutlinestipple

disabledstipple disabledwidth
llenar la apariencia predeterminada de un valo interior es transparente, y un val
or offill=" se seleccionar este comportamiento. Tambin puede configurar esta opcin
en cualquier color y en el interior de la elipse beilled con ese color; vase la s
eccin 5.3 , "Colores" (p. 10).
offset ofset (patrn del interior. Consulte la Seccin 5.14 , "patrones de tipo gote
l" (p. 17).
El color del borde alrededor de la parte exterior de la elipse. Por defecto es e
sbozo= 'negro' .
outlineoffset patrn ofset tipo gotel de la frontera. Consulte la Seccin 5.14 , "pat
rones de tipo gotel" (p. 17).
stipple un mapa de bits que indica cmo el interior de la elipse ser stipple.
Defecto isstipple=" , lo que significa un color slido. Un valor tpico sera bestippl
e= 'gris25 ". No tiene efecto a menos que se haya establecido thefill a alguno
de los colores. Consulte la Seccin 5.7 , "Mapas" (p. 12).
outlinestipple Stipple patrn que se va a utilizar para la frontera. Para especifi
car los valores de opcin tipo gotel, consulte a continuacin.
estado de forma predeterminada, los elementos se crean oval en statetk.NORMAL .
Establecer esta opcin totk.DESACTIVAR para hacer el valo no responde a las accione
s del ratn. Lo totk.HIDDEN para que el elemento invisible.
las etiquetas si una sola cadena, el valo se califica con esa cadena. Utilizar un
a tupla de las cadenas para etiquetar el valo con varias etiquetas. Consulte la S
eccin 8.4 , "Lienzo etiquetas" (p. 22).
width de la frontera alrededor de la parte exterior de la elipse. Por defecto es
1 pixel; vase la seccin 5.1 , "dimensiones" (p. 9) Para los posibles valores. Si
establece este valor a cero, la frontera no aparecer. Si establece este valor a c
ero y que el mal sea transparente, puede hacer desaparecer todo el valo.
8.12 .Lienzo objetos poligonales
como se muestra, un polgono tiene dos partes: su contorno como en su interior. Su
geometra es propsitos especi cos como una serie de vrtices [ (x0, y0), (x1, y1),...
(Xn, yn) ], pero el permetro incluye un segmento de ms (xn, yn) a (x0, y0). En e
ste ejemplo, no hay areive vrtices:
Nuevo Mxico Tech Computer Center Tkinter 8,5 referencia 33

Para crear un nuevo objeto de polgono en un canvasC:


id=C. create_polygon( x0,y0,x1,y1,... ,OPTION,...)
El constructor devuelve el identificador de objeto para el objeto. Opciones:
Cuadro 12.Canvaspolygon
activedash opciones Estas opciones especifican el aspecto del polgono cuando est e
n el tk.estado activo, es decir, cuando el mouse se sita sobre l. Para valores de
opcin, activefill seedash ,relleno ,presentacion ,outlinestipple ,tipo gotel, para
permitir una rehabilitacin dentaria posterior . activeoutline activeoutlinestipp
le
activestipple activewidth
guin utilizar esta opcin para generar un borde discontinuo alrededor del polgono. C
onsulte la Seccin 5.13 , "Dash" (p. 17).
dashoffset Utilice esta opcin para iniciar el modelo de guin en algn momento de su
ciclo distinto del principio. Consulte la Seccin 5.13 , "Dash" (p. 17).
disableddashThese opciones especifican el aspecto del polgono cuando itsstate dis
abledfillistk.DISABLED .
disabledoutline
disabledoutlinestipple
disabledstipple disabledwidth
llenar Se puede colorear el interior de esta opcin a un color. La apariencia pred
eterminada para el interior de un polgono es transparente y puede setfill=" para
obtener este comportamiento. Consulte la Seccin 5.3 , "Colores" (p. 10).
joinstyle Esta opcin controla el aspecto de las intersecciones entre adja- ciento

lados del polgono. Consulte la Seccin 5.12 , "estilos de combinacin y" (p. 16).
offset ofset del patrn tipo gotel en el interior del polgono. Consulte Seccin 5.14 ,
"Coincidencia patrones tipo gotel" (p. 17).
Color de contorno del esbozo; valores predeterminados tooutline=" , lo que hace
el contorno transparente.
34 8.5 Referencia Tkinter Nuevo Mxico Tech Computer Center

outlineoffset ofset tipo gotel de la frontera. Consulte Seccin 5.14, "stipple Coin
cidencia- sonales" (p. 17).
outlinestipple Utilice esta opcin para obtener un borde alrededor del polgono. El
valor de la opcin debe ser un mapa; vase la seccin 5.7 , "Mapas" (p. 12).
El esquema predeterminado utiliza las lneas rectas para conectar los vrtices; uso
suave=0 para obtener ese comportamiento. Si usesmooth=1, se obtiene un con- tinu
o curva spline. Por otra parte, si setsmooth=1 , se puede hacer cualquier segmen
to recto mediante la duplicacin de la coordenadas de cada uno de los extremos de
este segmento.
splinesteps thesmooth opcin si es cierto, cada curva spline se representa como un
a serie de segmentos de lnea recta. Opcin Thesplinesteps speciies el nmero de segme
ntos utilizados para aproximar cada seccin de la lnea; el valor predeterminado iss
plinesteps=12 .
estado De forma predeterminada, los polgonos se crean en thetk.estado NORMAL. Est
ablecer esta opcin totk.HIDDEN para que el polgono invisible, o lo totk.DESACTIVAR
para hacer que no responde a las acciones del mouse.
stipple un mapa de bits que indica cmo el interior del polgono ser stipple.
Defecto isstipple=" , lo que significa un color slido. Un valor tpico sera bestippl
e= 'gris25 ". No tiene efecto a menos que se haya establecido thefill a alguno
de los colores. Consulte la Seccin 5.7 , "Mapas" (p. 12).
las etiquetas si una sola cadena, el polgono se etiquetan con esa cadena. Utiliza
r una tupla de las cadenas para etiquetar el polgono con varias etiquetas. Consul
te la Seccin 8.4 , "Lienzo etiquetas" (p. 22).
width del esbozo; por defecto es 1. Vase la Seccin 5.1 , "dimensiones" (p. 9).
8.13 .Lienzo objetos de rectngulo
cada rectngulo se hace propsitos especi cos en dos puntos: (x0,y0) es la esquina su
perior izquierda, y (x1,y1) es la ubicacin del pxel en las afueras de la esquina i
nferior derecha.
Por ejemplo, el rectngulo propsitos especi cos de esquina superior izquierda (100.1
00 ) y esquina inferior derecha (102.102 ) es el cuadrado dos pxeles por dos pxele
s, incluyendo pixel (101.101 ), pero no incluidos (102.102 ).
Los rectngulos son dibujados en dos partes:
El esquema se encuentra en el interior del rectngulo en la parte superior y el la
do izquierdo, pero fuera del rectngulo en la parte inferior y en el lado derecho.
La apariencia predeterminada es un pxel de ancho borde negro.
Por ejemplo, considere un rectngulo con esquina superior izquierda (10,10 ) y esq
uina inferior derecha (11,11 ). Si usted solicita sin borde (width=0 ) y greeni
ll (fill= "green") , se obtiene un pxel verde (10,10 ).
Sin embargo, si usted lo solicita las mismas opciones con un borde negro (width=
1 ), se obtiene cuatro pxeles negros en (10,10 ), (10,11 ), (11,10 ), y (11,11 ).
Theill es el rea dentro del esquema. Su apariencia predeterminada es transparente
.
Para crear un objeto rectngulo en canvasC:
id=C. create_rectangle( x0,y0,x1,y1,option,...)
Este constructor devuelve el ID de objeto del rectngulo sobre lienzo. Las opcione
s incluyen:
Nuevo Mxico Tech Computer Center Tkinter 8,5 referencia 35

Tabla 13.Canvasrectangle
activedash opciones Estas opciones especifican la apariencia del rectngulo cuando
itsstate activefill istk.ACTIVO, es decir, cuando el ratn se encuentra en la par
te superior del rectngulo. Para todash ,relleno ,presentacion ,outlinestipple , l
os valores de las opciones, consulte activeoutlinestipple , para permitir una re
habilitacin dentaria posterior a continuacin.
activeoutlinestipple
activestipple activewidth
guin para producir un borde discontinuo alrededor del rectngulo, utilice esta opcin
para especificar un modelo de guin. Consulte la Seccin 5.13 , "Dash" (p. 17).
dashoffset Utilice esta opcin para iniciar el modelo de guin de la frontera en un
punto diferente en el ciclo; vase la seccin 5.13 , "Dash" (p. 17).
disableddashThese opciones especifican la apariencia del rectngulo cuando itsstat
e disabledfillistk.DISABLED .
disabledoutline
disabledoutlinestipple
disabledstipple disabledwidth
llenar de forma predeterminada, el interior de un rectngulo est vaca, y puede obten
er este comportamiento withfill=" . Tambin puede establecer la opcin de un color;
vase la seccin 5.3 , "Colores" (p. 10).
desplazamiento Utilice esta opcin para cambiar el ofset del interior (patrn. Consu
lte la Seccin 5.14 , "patrones de tipo gotel" (p. 17).
El color del borde. Por defecto isoutline= 'negro' .
outlineoffset Utilice esta opcin para ajustar el ofset del tipo gotel patrn en el e
sbozo; vase la seccin 5.14 , "patrones de tipo gotel" (p. 17).
outlinestipple Utilice esta opcin para crear un perfil. El patrn es de propsitos es
peci cos de bits, consulte la Seccin 5.7 , "Mapas" (p. 12) El
estado por defecto, los rectngulos son creados en thetk.estado NORMAL. El estado
es tk.ACTIVO cuando el ratn est sobre el rectngulo. Establezca esta opcin en los ct.
discapacitados a gris del rectngulo y que no responde a los eventos del mouse.
stipple un mapa de bits que indica cmo el interior del rectngulo se stipple.
Defecto isstipple=" , lo que significa un color slido. Un valor tpico sera bestippl
e= 'gris25 ". No tiene efecto a menos que se haya establecido thefill a alguno
de los colores. Consulte la Seccin 5.7 , "Mapas" (p. 12).
las etiquetas si una sola cadena, el rectngulo se califica con esa cadena. Utiliz
ar una tupla de cadenas a la etiqueta del rectngulo con varias etiquetas. Consult
e la Seccin 8.4 , "Lienzo etiquetas" (p. 22).
width de la frontera. Por defecto es 1 pixel. Usewidth=0 para que la frontera in
visible. Vase la Seccin 5.1 , "dimensiones" (p. 9).
36 8.5 Referencia Tkinter Nuevo Mxico Tech Computer Center

8,14 .Lienzo objetos de texto


que puede mostrar una o ms lneas de texto en un canvasCby crear un objeto de texto
:
id=C. create_text( x,y,option, ... )
Esto devuelve el ID de objeto del objeto de texto sobre canvasC. Las opciones in
cluyen:
Cuadro 14.Canvastext opciones
activefill El color del texto que se va a utilizar cuando el texto est activa, es
decir, cuando el ratn est sobre ella. Para especificar los valores de opcin, seefi
ll a continuacin.
activestipple El patrn tipo gotel que se utiliza cuando el texto est activo. Para e
specificar los valores de opcin, consulte a continuacin tipo gotel.
ancla el valor predeterminado isanchor=tk.CENTRO , lo que significa que el texto
se centra verticalmente y horizontalmente en posicin (x,y). Consulte la Seccin 5
.5 , "anclajes" (p. 12) Para los posibles valores. Por ejemplo, si usted specify

anchor=tk.SW , el texto se coloca en una posicin que permita su esquina inferior


izquierda est en el punto (x,y).
disabledfill El color del texto que se va a utilizar cuando el objeto de texto's
state istk.DISABLED (DESACTIVADA). Para especificar los valores de opcin, seefil
l a continuacin.
disabledstipple El patrn tipo gotel que se utilizar cuando el texto est desactivada.
Para especificar los valores de opcin, consulte a continuacin tipo gotel.
llene el color de texto predeterminado es negro, pero se puede hacer en cualquie
r color mediante la configuracin de la opcin de llenado de ese color. Consulte la
Seccin 5.3 , "Colores" (p. 10).
fuente si no te gusta la fuente predeterminada, establezca esta opcin a cualquier
valor de la fuente. Consulte la Seccin 5.4 , "Type" (p. 10).
justificar por varias lneas de texto muestra, esta opcin controla cmo las lneas son
justiied:
tk.IZQUIERDA (el valor por omisin), tk.CENTRO , ortk.DERECHA .
offset ofset El tipo gotel que se utiliza en la representacin del texto. Para obte
ner ms informacin, consulte la seccin 5.14 , "patrones de tipo gotel" (p. 17) El
estado de forma predeterminada, el elemento de texto de estado istk.NORMAL . Est
ablecer esta opcin totk.DESACTIVAR para hacer en respuesta a los eventos del mous
e, o lo totk.HIDDEN a hacerlo invisible.
stipple un mapa de bits que indica cmo el texto se stipple. Defecto isstipple=" ,
que significa "slido". Un valor tpico sera bestipple= 'gris25 ". Consulte Seccin
5.7 , "Mapas" (p. 12).
las etiquetas si una sola cadena, el objeto de texto etiquetado con esa cadena.
Utilizar una tupla de las cadenas para etiquetar el objeto con varias etiquetas.
Consulte la Seccin 8.4 , "Lienzo etiquetas" (p. 22). El
texto El texto que se muestra en el objeto, como una cadena. Utilice caracteres
de nueva lnea ( ' \n' ) para forzar saltos de lnea.
ancho si no se especifica awidth opcin, el texto se establece dentro de un rectngu
lo, mientras la lnea ms larga. Sin embargo, tambin puede configurar thewidth opcin a
una dimensin, y cada una de las lneas del texto se divide en lneas cortas, si es n
ecesario, o incluso rota dentro de las palabras, toit en el propsitos especi cos a
ncho. Vase la Seccin 5.1 , "dimensiones" (p. 9).
Puede cambiar el texto que se muestra en un elemento de texto.
Para recuperar el texto de un elemento con un objeto canvasC IDIon, callC.itemcg
et( I, 'texto' ).
New Mexico Tech Computer Center Tkinter 8,5 referencia 37

Para reemplazar el texto de un elemento con un objeto IDIon canvasCwith el texto


de un cadenas, llamada C. itemconfigure( I,text=S).
Una serie de lienzos mtodos le permiten manipular los elementos de texto. Ver la
Seccin 8.6 , "Mtodos onCanvas widgets" (p. 22), especiallydchars ,atencin ,icursor
,index , ycolquelo .
8.15 .Ventana del lienzo objetos
puede colocar cualquier Tkinter widget en un lienzo con un lienzo objeto window.
Una ventana es un rectngulo de zona gular que puede llevar un widget Tkinter. El
widget debe ser el hijo de la misma ventana de nivel superior como el lienzo, o
el hijo de algn widget situado en la misma ventana de nivel superior.
Si quieres poner complejo y de mltiples objetos de widget en un lienzo, puede uti
lizar este mtodo para colocar un cuadro widget en el lienzo y, a continuacin, colo
car otros widgets dentro de ese marco.
Para crear una nueva ventana del lienzo en un objeto canvasC:
id=C. create_window( x,y,option,...)
Esta devuelve el identificador de objeto para el objeto window. Las opciones inc
luyen:
Tabla 15.Canvaswindow opciones
por defecto el ancla isanchor=tk.CENTRO, en el sentido de que la ventana est cent

rada en la (x,y) posi- cin. Consulte la Seccin 5.5 , "anclajes" (p. 12) Para los v
alores posibles. Por ejemplo, si especifica anchor=tk.E , la ventana se coloca e
n una posicin que permita que el punto (x,y) es en el punto medio de su mano dere
cha (este) borde.
altura del rea reservada para la ventana. Si se omite, la ventana se dimensionarn
toit la altura del contenido widget. Consulte la Seccin 5.1 , "dimensiones" (p. 9
) Para los posibles valores. El
estado de forma predeterminada, los elementos se encuentran en ventana thetk.est
ado NORMAL. Establecer esta opcin totk.PERSONAS CON DISCAPACIDAD para que la vent
ana no responde a la entrada del mouse, o totk.HIDDEN para que sea invisible.
tagsIf una sola cadena, la ventana se etiquetan con esa cadena. Utilizar una tup
la de las cadenas para etiquetar la ventana con varias etiquetas. Consulte la Se
ccin 8.4 , "Lienzo etiquetas" (p. 22).
width el ancho de la zona reservada para la ventana. Si se omite, la ventana se
ajustar el tamao toit el ancho de la figura widget.
ventana Usewindow=wwherewis el widget que desea poner en el lienzo. Si se ha omi
tido en un principio, ms tarde se puede callC.itemconfigure (id,ventana=w)para co
locar el widgetwonto el lienzo, whereidis la ventana de cdigo de objeto.
9. Widget TheCheckbutton
El objetivo de un widget botn (a veces llamado "checkbox") es que permite al usua
rio leer y seleccionar una opcin de dos vas. El grfico anterior muestra cmo checkbut
tons buscar en la de (0) y (1) estado en una implementacin: esta es una captura d
e pantalla de dos checkbuttons con 24 puntos fuente Times.
El indicador es la parte del botn que muestra su estado y la etiqueta es el texto
que aparece junto a ella.
38 8.5 Referencia Tkinter Nuevo Mxico Tech Computer Center

Usted tendr que crear una variable de control, una instancia de clase theIntVar,
de modo que su programa puede consultar y establecer el estado del botn. Consulte
la Seccin 52, "variables de Control: los valores de la mujer- es" (p. 153), a co
ntinuacin.
Tambin puede utilizar enlaces de eventos a reaccionar a las acciones del usuario
sobre el botn; vase la Seccin 54, los "eventos" (p. 157), a continuacin.
Usted puede desactivar un botn. Esto cambia su apariencia de "gris" y lo hace res
ponder con el mouse.
Puede librarse del botn indicador y hacer todo el widget de "push-push" que se ve
cuando se levant, y se ve cuando se borra.
Para crear un botn en una ventana principal o frameparent :
w=tk.Botn( parent,option,...)
El constructor devuelve un newCheckbutton widget. Las opciones incluyen:
Cuadro 16.Botn opciones widget
activebackground color de fondo cuando el botn est en la posicin del cursor. Vea la
Seccin 5.3 , "Colores" (p. 10).
activeforeground color de primer plano cuando el botn est en la posicin del cursor.
ancla si el widget habita en un espacio ms grande de lo que necesita, esta opcin s
peciies el botn donde se sentar en ese espacio. El valor predeterminado isanchor=t
k.CEN- TER. Consulte la Seccin 5.5 , "anclajes" (p. 12) Para los valores permitid
os. Por ejemplo, si usted useanchor=NW , el widget se situar en la esquina superi
or izquierda del espacio.
bgorbackground El color de fondo normal aparece detrs de la etiqueta y el indicad
or. Consulte la Seccin 5.3 , "Colores" (p. 10). Opcin del mapa para este speciies
el color de 0-bits en el mapa de bits.
mapa de bits a mostrar una imagen en blanco y negro de un botn, seleccione esta o
pcin en un mapa; vase la seccin 5.7 , "Mapas" (p. 12).
bdorborderwidth El tamao de la frontera en relacin con el indicador. Por defecto e
s de dos pxeles. Para pos- sible valores, consulte la Seccin 5.1 , "dimensiones" (
p. 9),

mando un procedimiento que se llama cada vez que el usuario cambia el estado de
este botn de
compuestos Utilice esta opcin para mostrar tanto texto como un grfico, lo que pued
e ser un mapa de bits o una imagen, sobre el botn. Valores Permitidos describir l
a posicin de la imagen respecto al texto, y puede ser de cualquier oftk.EN RESUME
N ,tk.TOP , tk.IZQUIERDA ,tk., ortk.CENTRO . Por ejemplo, compuesto=tk.posicin iz
quierda, el grfico de la izquierda del texto.
cursor Si la opcin est establecida en un cursor nombre (vase la seccin 5.8 , "Cursor
es" (p. 13), el cursor del ratn se cambio a este modelo cuando se est por encima d
el botn.
disabledforeground El color de primer plano utilizado para representar el texto
de un botn. El valor predeterminado es un versin del predeterminado color de prime
r plano.
fuente la fuente que se utiliza para acumulacin delcampo . Consulte la seccin 5.4
"Type" (p. 10).
fgorforeground El color utilizado para representar acumulacin delcampo . Opcin del
mapa para este speciies el color de 1-bits en el mapa de bits.
altura el nmero de lneas de texto en el botn. Por defecto es 1.
New Mexico Tech Computer Center Tkinter 8,5 referencia 39

highlightbackground El color de la atencin el botn resaltar cuando no tiene el foc


o.
Vase la Seccin 53, "Focus: enrutamiento entrada de teclado" (p. 155).
highlightcolor El color de la atencin el botn resaltar cuando tiene el foco.
highlightthickness El espesor de la atencin. Por defecto es 1. Establecido en 0 p
ara suprimir la presentacin de la iniciativa objetivo destacar.
imagen que se va a mostrar una imagen grfica en el botn, establezca esta opcin en u
n objeto image.
Consulte la Seccin 5.9 , "Imgenes" (p. 14).
indicatoronNormally un botn aparece como su indicador un cuadro que muestra el bo
tn si se establece o no. Usted puede obtener este comportamiento settingindic Ato
rn -recientemente clausurado- por-=1 . Sin embargo, si usted setindicatoron=0 , e
l indicador desaparece, y todo el widget se convierte en un push-push botn que ti
ene planteado cuando se borra y hundidos cuando se establece. Si se desea aument
ar thebor derwidth valor- para que le resulte ms fcil ver el estado de este tipo d
e controles.
justificar si acumulacin delcampo contiene varias lneas, esta opcin controla la for
ma en que el texto es jus- tiied:tk.CENTRO ,tk.IZQUIERDA , ortk..
offrelief Por defecto, checkbuttons uso thetk.PLANTEADO alivio cuando el botn est
ilo de (borrado); utilice esta opcin para especificar un estilo diferente de que
se dis- cuando el botn est. Vase la Seccin 5.6 , "Socorro estilos" (p. 12) En el cas
o de valores.
offvalue Normalmente, un botn de control asociado variable se establece en 0 cuan
do se borra (de). Puede proporcionar una alternativa, valor para el conjunto de
l estado- tingoffvalue a ese valor.
onvalue Normalmente, un botn de control de variable se establece en 1 cuando se e
stablece (en). Puede proporcionar una alternativa, valor para el estado de onva
lue a ese valor.
overreliefUse esta opcin para especificar un estilo de socorro se muestra cuando
el ratn est sobre el botn; vase la seccin 5.6 , "Socorro estilos" (p. 12),
padx cunto espacio para salir a la izquierda y a la derecha del botn y el texto.
Por defecto es 1 pixel. Para ver los valores posibles, consulte la Seccin 5.1 , "
dimensiones" (p. 9).
pady cunto espacio para dejar por encima y por debajo del botn y el texto. Por def
ecto es 1 pxel.
alivio con el valor por defecto,socorro=tk.PLANA, el botn no destacan por sus ant
ecedentes. Puede establecer esta opcin para cualquiera de los otros estilos (vase

la seccin 5.6 , "Socorro estilos" (p. 12), o userelief=tk.SLIDOS , que le proporci


ona una slida estructura negra alrededor.
selectcolorThe color del botn cuando se establezca. Por defecto isselectcolor= 'r
ed'
selectimageIf se establece esta opcin a una imagen, la imagen aparecer en el botn c
uando se establezca. Consulte la Seccin 5.9 , "Imgenes" (p. 14).
El valor predeterminado isstate=tk.NORMAL , pero puede usestate=tk.color gris CO
N DISCAPACIDAD para el control y que no responde. Si el cursor se encuentra sobr
e el botn, el estado istk.ACTIVO .
takefocus El valor por omisin es que el foco de entrada (vase la Seccin 53, "Focus:
enrutamiento entrada de teclado" (p. 155) Pasar a travs de un botn. Si settakefocu
s=0 , no se centrar pase a travs de l.
texto La etiqueta aparece al lado del botn. Utilizar saltos ( ' \n' ) para mostra
r varias lneas de texto.
40 8.5 Referencia Tkinter Nuevo Mxico Tech Computer Center

textvariable Si necesita cambiar la etiqueta de un botn durante la ejecucin de los


programas, crear un StringVar (vase la Seccin 52, "variables de Control: los valo
res que hay detrs de la mujer" (p. 153) Para administrar el valor actual y establ
ece el valor de esta opcin en la variable de control. Cada vez que el control cam
bia el valor de la variable, el botn anotacin de cambiar automticamente as.
subrayar con el valor por defecto de -1, ninguno de los personajes del texto de
la etiqueta es crtica. Establezca esta opcin en el ndice de un personaje en el text
o (contando desde cero) para subrayar el carcter
variable la variable de control que realiza el seguimiento de la situacin actual
del botn; vase la Seccin 52, "variables de Control: los valores que sustentan los w
idgets" (p. 153).
Normalmente, esta variable es anIntVar , y0medio borrada y1conjunto de medios, s
in embargo, vase theoffvalue andonvalue opciones anteriores.
anchura la anchura predeterminada de un botn se determina por el tamao de la image
n o en el texto. Puede configurar esta opcin en una serie de caracteres y el botn,
siempre tendr un espacio para que muchos caracteres.
wraplengthNormally, las lneas no estn envueltos. Puede establecer esta opcin en un
nmero de caracteres y en todas las lneas, se rompe en pedazos no ms de esa cantidad
.
Mtodos de checkbuttons incluyen:
.cancelar() borra (vueltas) del botn.
.Flash() parpadea el botn un par de veces entre sus activos y colores normales, p
ero se deja que el modo en que comenz.
.Invoke() puede llamar a este mtodo para obtener las mismas acciones que se produ
ce si el usuario hace clic en el botn de control para cambiar su estado.
.Select() establece (se enciende) el botn.
.Toggle() borra el botn si, establece que si se desactiva.
10. El widget
El propsito de un widget es que permite al usuario ver y modificar una sola lnea d
e texto.
Si desea visualizar mltiples lneas de texto que se puede editar, ver la Seccin 24,
"acumulacin delcampo widget" (p. 82).
Si desea que se muestre una o ms lneas de texto que no puede ser modiied por el us
uario, consulte la Seccin 12, "TheLabel widget" (p. 48).
Algunos deinitions:
La seleccin es una regin destacada del texto en un widget, si es que existe.
Normalmente la seleccin realizada por el usuario con el ratn, y texto seleccionado
se copia en el portapapeles del sistema. Sin embargo, Tkinter permite controlar
si desea o no texto seleccionado se va a copiar en el portapapeles. Tambin puede
seleccionar texto en un bajo el control del programa.
New Mexico Tech Computer Center Tkinter 8,5 referencia 41

La insercin cursor muestra dnde nuevo texto ser insertado. Slo se muestra cuando el
usuario hace clic con el ratn en algn lugar del widget. Por lo general, aparece co
mo una lnea vertical parpadeante en el widget.
Puede personalizar la apariencia de varias formas.
Posiciones dentro del widget de texto que se muestra son a modo de ndice. Hay var
ias formas de especificar un ndice:
Como Python ndices normales, empezando por el 0.
El constanttk.FINAL se refiere a la posicin despus del texto existente.
El constanttk.INSERT se refiere a la posicin actual del cursor insercin.
El constanttk.ANCHOR theirst se refiere al carcter de la seleccin, si hay una sele
ccin.
Es posible que tenga que igura que posicin en el widget correspondiente a una det
erminada posicin del ratn. Para simplificar este proceso, se puede utilizar como u
n ndice una cadena de la forma' @n', wherenis la distancia horizontal en pxeles en
tre el borde izquierdo de el widget y el ratn. Un ndice de estas caractersticas se
especificar el carcter en esa posicin horizontal posicin del ratn.
Para crear un widget newEntry en una ventana o marco raz namedparent :
w=tk.Entrada( parent,option,...)
Este constructor devuelve el newEntry widget. Las opciones incluyen:
Cuadro 17.Entrada widget
bgorbackground opciones El color de fondo dentro de la zona de entrada. Valor po
r defecto es un gris claro.
bdorborderwidth el ancho del borde alrededor del rea de entrada; vase la seccin 5.1
, "dimensiones" (p. 9). El valor predeterminado es de dos pxeles.
cursor El cursor utilizado cuando el ratn est dentro de la entrada widget; vase la
seccin 5.8 , "Cursores" (p. 13).
disabledbackground El color de fondo que se mostrar cuando el widget est en thetk.
DIS- TIVADO estado. Para valores de opcin, seebgabove.
disabledforeground El color de primer plano que se mostrar cuando el widget est en
thetk.DIS- TIVADO estado. Para especificar los valores de opcin, seefgbelow.
exportselection De forma predeterminada, si selecciona texto en un widget, se ex
portan automticamente en el portapapeles. Para evitar esta exportacin, useexportse
lec-=0 .
fgorforeground El color utilizado para procesar el texto. Por defecto es negro.
fuente La fuente utilizada para el texto introducido en el widget por el usuario
. Consulte la Seccin 5.4 , "Type" (p. 10).
highlightbackground Color de las focus resaltar cuando el widget no tiene el foc
o. Vase Sec- 53, "Focus: enrutamiento entrada de teclado" (p. 155).
highlightcolor Color mostrado en el foco resaltar cuando el widget tiene el foco
.
highlightthickness Espesor de la atencin.
insertbackground De forma predeterminada, la insercin cursor (que muestra el punt
o dentro del texto en que las nuevas entradas de teclado se insertar) es de color
negro. Para obtener un color diferente de insercin cursor, setinsertbackground a
cualquier color; vase Sec- 5,3 , "Colores" (p. 10).
42 8.5 Referencia Tkinter Nuevo Mxico Tech Computer Center

insertborderwidth De forma predeterminada, la insercin cursor es un rectngulo simp


le. Usted puede obtener el cursor con thetk.PLANTEADO partir de socorro (vase la
seccin 5.6 , "Socorro estilos" (p. 12) Por settinginsertborderwidth a la dimensin
de la 3-d frontera. Si lo hace, asegrese de que theinsertwidth opcin es al menos e
l doble del valor.
insertofftime De forma predeterminada, la insercin cursor parpadea. Puede setinse

rtofftime a un valor en milisegundos para especificar la cantidad de tiempo que


el cursor pasa de insercin. Por defecto es 300. Si useinsertofftime=0 , la inserc
in cursor no parpadear a todos.
insertontime Similar toinsertofftime , esta opcin speciies la cantidad de tiempo
que el cursor pasa por parpadear. Por defecto es 600 (milisegundos).
insertwidthBy forma predeterminada, la insercin cursor es de 2 pxeles de ancho. Pu
ede ajustar esta configuracin a travs de cualquier dimensin insertwidth.
justificar Esta opcin controla cmo el texto se justiied cuando el texto no hasta e
l ancho del widget. El valor puede betk.IZQUIERDA (el valor por omisin), tk.CENTR
O o tk.DERECHA .
readonlybackground El color de fondo que se mostrar cuando el widget'sstate opcin
es "readonly".
alivio selecciona tres de sombreado efectos tridimensionales en torno a la entra
da de texto. Vase Sec- 5,6 , "Socorro estilos" (p. 12). El valor predeterminado
isrelief=tk.hundidos .
selectbackground El color de fondo para utilizar mostrar texto seleccionado. Vea
la Seccin 5.3 , "Colores" (p. 10).
selectborderwidth el ancho del borde alrededor de texto seleccionado. El valor p
redeterminado es un pixel.
selectforeground el primer plano (texto) color de texto seleccionado.
Normalmente, los caracteres que escribe el usuario aparezcan en la entrada. Para
hacer una "contrasea" que resuena cada carcter como un asterisco, setshow=' * ' .
estado Utilice esta opcin para desactivar el widget para que el usuario no puede
escribir nada en ella. Usestate=tk.Desactivar para desactivar el widget, estado=
tk.NORMAL para permitir al usuario introducir de nuevo. El programa puede alsoin
d si el cursor se encuentra en el widget de interrogar esta opcin; sino que tendr
el valuetk.activa cuando el ratn est sobre l. Tambin puede establecer esta opcin a "p
ersonas con discapacidad", que es como thetk.estado deshabilitado, pero el conte
nido del widget se pueden seleccionar o copiar.
takefocus De forma predeterminada, el enfoque se ficha a travs de widgets. Establ
ecer esta opcin en 0 para tener el widget de la secuencia. Para una discusin de in
ters, vase la Seccin 53, "Focus: enrutamiento entrada de teclado" (p. 155).
textvariable a fin de poder recuperar el texto actual de la entrada widget, debe
configurar esta opcin en una instancia de clase theStringVar; vase la Seccin 52, "
variables de Control: los valores que sustentan los widgets" (p. 153). Puede re
cuperar el texto usingv.get() , o se establece usingv.set() , wherevis la variab
le de control.
validar puede utilizar esta opcin para configurar el widget para que su contenido
se comprueban por una funcin de validacin en determinados momentos. Vase la seccin
10.2 , "Aadir valida- cin a un widget" (p. 45).
validatecommand una devolucin de llamada que valida el texto del widget. Consulte
la Seccin 10.2 , "Agregar validacin a un widget" (p. 45).
New Mexico Tech Computer Center Tkinter 8,5 referencia 43

ancho del tamao de la entrada de caracteres. El valor predeterminado es 20. Para


fonts proporcionales, la longitud fsica del widget se basa en el ancho promedio d
e un carcter por el valor de opcin thewidth.
xscrollcommand Si usted espera que los usuarios a menudo introducir ms texto del
que el tamao en pantalla del widget, puede vincular su entrada widget para una ba
rra de desplazamiento. Establezca esta opcin en el mtodo set de la barra de despla
zamiento. Para obtener ms informacin, consulte la seccin 10.1 , "Desplazamiento un
widget" (p. 45).
Mtodos objetos instrumentosgama baja incluyen:
.delete(en primer lugar,=None) Elimina los caracteres desde el widget, comenzand
o por el lado de indexfirst , hasta pero sin incluir el carcter de positionlast .
Si se omite el segundo argumento, slo el nico carcter en la posicin primera es elim
inado.

.Get() devuelve el texto actual de la entrada como una cadena.


.Icursor( index) Establecer la insercin cursor justo antes del carcter de la given
index .
.Index(index) Trasladar el contenido de la entrada, de forma que el carcter de la
izquierda givenindex es el carcter visible.
No tiene efecto si el textits totalmente dentro de la entrada.
.Insert(index,s) Inserta stringsbefore el carcter de la givenindex .
.Scan_dragto( x) Vase thescan_mark mtodo a continuacin.
.Scan_mark( x) Utilice esta opcin para configurar la exploracin del contenido de e
l widget que tiene una barra de desplazamiento que es compatible con desplazamie
nto horizontal.
Para implementar esta caracterstica, de enlazar el mouse button-down caso a un co
ntrolador que llama scan_mark( x), wherexis mousexposition el actual. A continua
cin, puede enlazar el <Motion>Evento a un controlador que callsscan_dragto( x), w
herexis mousexposition el actual. Mtodo Thescan_dragto desplaza el contenido el w
idget de forma continua a una velocidad proporcional a la distancia horizontal e
ntre la posicin en el momento de llamar thescan_mark y la posicin actual.
.Select_adjust( index) Este mtodo se utiliza para asegurarse de que la seleccin in
cluye el carcter de la speciiedindex .
Si la seleccin incluye ya que este personaje, no ocurre nada. Si no es as, la sele
ccin se ha ampliado desde su posicin actual (si los hay) para incluir positioninde
x .
.Select_clear() borra la seleccin. Si no hay actualmente una seleccin, no tiene ni
ngn efecto.
.Select_from( index) Establece thetk.ANCHOR posicin de ndice del carcter selecciona
do byindex , y selecciona ese personaje.
.Select_present() si existe una seleccin, devuelve true, de lo contrario devuelve
false.
.Select_range( inicio, fin) Establece la seleccin bajo el control del programa. S
elecciona el texto a partir de thestartindex , hasta, pero no incluyendo el carct
er en el ndice. Elinicio posicin debe ser ante el.
44 8.5 Referencia Tkinter Nuevo Mxico Tech Computer Center

para seleccionar todo el texto en una entrada widgete, usee.select_range(0, tk.F


INAL) .
.Select_to( index) Selecciona todo el texto de thetk.posicin del ancla hasta pero
sin incluir el carcter en el ndice dado .
.Xview(index) Igual que.xview() . Este mtodo es til para vincular el widget a una
barra de desplazamiento horizontal.
Consulte la Seccin 10.1 , "desplazando un widget" (p. 45).
.Xview_moveto( f) coloca el texto en la entrada, de forma que el carcter de posit
ionf, en relacin a la totalidad del texto, se encuentra en el borde izquierdo de
la ventana. Thefargument debe estar en el intervalo [0,1 ], donde 0 significa qu
e el extremo izquierdo del texto y el extremo derecho 1
.xview_scroll( nmero,qu) utiliza para desplazarse por la entrada en horizontal. Th
ewhat argumento debe ser eithertk.LAS UNIDADES , para desplazarse por caracteres
anchos, ortk.LAS PGINAS , para desplazarse por trozos del tamao de la entrada wid
get. El nmero es positivo para desplazarse hacia la izquierda a la derecha, negat
ivo para desplazarse hacia la derecha a la izquierda. Por ejemplo, para una entr
ada widgete, e.xview_scroll( -1, los conocimientos tradicionales.PGINAS) mover el
texto una "pgina" para la derecha, y e.xview_scroll(4, los conocimientos tradici
onales.LAS UNIDADES) mover el texto cuatro caracteres a la izquierda.
10.1 . Un desplazamiento
de un widget widget desplazable requiere un poco ms de cdigo por su parte para ada
ptar theScrollbar widget de devolucin a los mtodos disponibles en el widget. He aq
u algunos fragmentos de cdigo illus- decidi definir la configuracin. En primer lugar
, la creacin y la vinculacin de el andScrollbar widgets:

self.entrada = tk.Entrada(self, width= 10) self.entrada.grid(fila=0, sticky=tk.E


+tk.W)
self.entryScroll = tk.scrollbar(self, orient=tk.HORIZONTAL, el comando=self.__sc
rollHandler) self.entryScroll.grid(fila=1, sticky=tk.E+tk.W) self.entrada[ 'xscr
ollcommand'] = self.entryScroll.set
He aqu la funcin de adaptador anteriormente mencionadas:
def__scrollHandler(self, * L):
op,howMany=L[ 0] ,L[ 1] ifop== 'desplazamiento':
unidades=L[ 2] self.entrada.xview_scroll(howMany, unidades) elifop== "moveto':
self.entrada.xview_moveto(howMany)
10.2 . Agregar validacin a un widget
de algunas de las aplicaciones, es posible que desee comprobar el contenido de u
n widget para asegurarse de que son vlidos de acuerdo con alguna regla que su apl
icacin debe cumplir. Usted deine lo que es vlido por escrito una funcin de devolucin
de llamada que revisa el contenido y las seales si es vlido o no.
A continuacin se presenta el procedimiento para la configuracin de validacin en el
widget.
New Mexico Tech Computer Center Tkinter 8,5 referencia 45

1. Escribir una funcin de devolucin de llamada que comprueba el texto en el return


sTrue y si el texto no es vlido, o false si no. Si la devolucin returnsFalse , el
usuario intente editar el texto ser rechazado, y el texto se ha modificado.
2. Registrar la funcin de devolucin de llamada. En este paso, se puede producir un
Tcl contenedor alrededor de un Python funcin.
Supongamos que la funcin de devolucin de llamada se encuentra una funcin namedisOka
y . Para registrar esta funcin, utilice el mtodo universal widget.register(lmpara e
stbien) . Este mtodo devuelve una cadena de caracteres que Tkinter puede llamar a
la funcin.
3. Cuando se llama el constructor, utilizar thevalidatecommand opcin en el constr
uctor para especificar la devolucin de llamada, y el uso thevalidate opcin para es
pecificar cundo la devolucin sern llamados para validar el texto en la devolucin de
llamada. Los valores de estas opciones se examinan con ms detalle a continuacin.
A continuacin se muestran los valores de opcin thevalidate y lo que significan.
"Focus" Validar siempre que el widget obtiene o pierde el foco (vase la Seccin 53,
"Focus: enrutamiento entrada de teclado" (p. 155)).
"Focusin" Validar siempre que el widget obtiene el foco.
"Focusout de validar siempre que el widget pierde el foco.
'Clave' validar cualquier tecla cada vez que cambia el contenido del widget.
'Todos' Validar en todas las situaciones anteriores.
'Ninguno' de validacin. Esta es la opcin predeterminada. Tenga en cuenta que esta
es la cadena "ninguno", no el especial valueNone Python .
El valor de opcin thevalidatecommand argumentos depende de lo que usted quisiera
que su devolucin a recibir.
Tal vez la nica cosa que la devolucin debe saber es cul es el texto que aparece en
el . Si ese es el caso, puede utilizar el mtodo get(), de thetextvariable asociad
os con el widget para recuperar ese texto.
En este caso, todo lo que necesita es la opcin "validatecommand= f", wherefis el
nombre de la funcin de devolucin de llamada.
Tkinter tambin puede proporcionar una serie de elementos de informacin que la devo
lucin de llamada. Si desea utilizar algunos de estos elementos, cuando se llama e
l constructor, utilizar la optionvalidatecommand=( f, su funcin de devolucin de ll
amada y cada s1,s2,...) , wherefis el nombre de cdigo. Para cada cdigo de sustituc
in, recibirn la devolucin de siis una sustitucin argumento de posicin que contiene el
valor adecuado.
Aqu estn los cdigos sustitucin.
Tabla 18. Sustitucin de devolucin los cdigos
" %d" cdigo de accin: 0 un intento de eliminacin, 1 un intento de insercin, o -1 si

la llamada se realiz llamado para concentrarse en, foco, o un cambio en thetextva


riable .
46 8.5 Referencia Tkinter Nuevo Mxico Tech Computer Center

" %i", cuando el usuario intenta insertar o eliminar texto, este argumento ser el
ndice de el principio de la insercin o la eliminacin. Si la devolucin se debe a con
centracin en foco, o un cambio en el textvariable, el argumento ser de 1.
' %P' es el valor que el texto tendr si el cambio est permitido.
" %S" el texto de la entrada antes del cambio.
" %S" si la llamada se ha debido a una insercin o supresin, este argumento ser el t
exto que se inserta o se elimina.
' %V' el valor actual del widget'svalidate opcin.
' %V' la razn de esta devolucin de llamada: uno de "focusin', 'focusout', 'clave'
, o 'obligado' si el textvariable ha cambiado.
' %W' el nombre del widget.
He aqu un pequeo ejemplo. Supongamos que se desea la devolucin para recibir el " %d
" para ind de por qu se ha llamado ' %i" para ind en la insercin o supresin; y " %S
" a ind lo que se va a insertar o eliminar. El mtodo puede ser parecido a este:
defisOkay(self, por qu, donde, qu):
...
Utilizar la siguiente universal.register() mtodo para envolver esta funcin. Supone
mos thatself es algunos widget.
okayCommand = self.register(lmpara estbien)
con la configuracin de esta devolucin de llamada, se puede utilizar estas dos opci
ones en el constructor:
self.w=Entrada(self, validar= 'todo', validatecommand= (okayCommand, '%d','%i','
%S'),...)
si returnsFalse , el texto no va a cambiar. Y supongamos que el que actualmente
contiene la cadena "abcdefg", y el usuario selecciona "cde" y, a continuacin, pul
sa Retroceso. Esto dara como resultado un callisOkay(0,2 , "cde") : 0 para la eli
minacin, 2 para la posicin de antes"c", y "cde" de la cadena que se va a eliminar.
IfisOkay() returnsTrue , el nuevo texto ser "abfg"
el widget tambin admite aninvalidcommand speciies opcin que una funcin de devolucin
de llamada que se llama siempre que thevalidatecommand returnsFalse . Este coman
do puede modificar el texto en el widget mediante el mtodo set() en el widget de
associatedtextvariable . Configurar esta opcin funciona de la misma como la creac
in de thevalidatecommand . Debe utilizar el.register() mtodo para envolver su func
in; este mtodo devuelve el nombre de la funcin como una cadena. A continuacin, pasar
como el valor de opcin theinvalidcommand bien esa cadena, o como el irst elemento
de sustitucin una tupla que contiene los cdigos.
11. Widget delrespaldo
un marco es bsicamente un contenedor de otros widgets.
La ventana raz de la aplicacin es bsicamente un bastidor.
Cada frame tiene su propio diseo de cuadrcula, de modo que las cuadrculas de widget
s en cada marco trabaja de manera independiente.
La Trama los widgets son una herramienta valiosa para modular su aplicacin. Puede
agrupar un conjunto de widgets widget en un compuesto de ponerlo en un marco. M
ejor an, usted puede declarar un nuevo
Nuevo Mxico Tech Computer Center Tkinter 8,5 referencia 47

clase que hereda fromFrame , aadir su propia interfaz. Esta es una buena manera d
e ocultar los detalles de las interacciones dentro de un grupo de los widgets de
el mundo exterior.
Para crear un nuevo marco widget en una ventana o marco raz namedparent :

w=Frame(parent,option,...)
El constructor devuelve el newFrame widget. Opciones:
Cuadro 19.Frame widget
bgorbackground opciones la trama de color de fondo. Consulte la Seccin 5.3 , "Col
ores" (p. 10).
bdorborderwidth Anchura del bastidor de frontera. El valor predeterminado es 0 (
sin borde). Para valores permitidos, consulte la Seccin 5.1 , "dimensiones" (p.
9).
cursor El cursor utilizado cuando el ratn est dentro del marco widget; consulte la
Seccin 5.8 , "Cursores" (p. 13).
altura La dimensin vertical de la nueva trama. Esto se ignora, a menos que usted
tambin llamada.grid_propagate(0) en el bastidor, consulte la Seccin 4.2 , "Otros mt
odos de gestin grid" (p. 7).
highlightbackground Color del foco resaltar cuando el marco no tiene el foco. Vas
e Sec- 53, "Focus: enrutamiento entrada de teclado" (p. 155).
highlightcolor Color mostrado en el foco resaltar cuando el marco tiene el foco.
highlightthickness Espesor de la atencin.
padx Normalmente, un cuadro su apretado alrededor de su contenido. A addNpixels
de hori- zontales espacio dentro del marco, setpadx=N.
pady utilizados para agregar espacio vertical dentro de un marco. Seepadx por en
cima
de la omisin de socorro para un marco istk.PLANA, lo que significa que el bastido
r se mezcla con su entorno. Para poner un borde alrededor de una trama, conjunto
itsborder - anchura en un valor positivo y establezca su socorro a uno de los t
ipos de relieve; vase la seccin 5.6 , "Socorro estilos" (p. 12).
takefocus Normalmente, los widgets no son visitados por foco de entrada (vase la
Seccin 53, "Focus: enrutamiento entrada de teclado" (p. 155) Para un panorama gen
eral de este tema).
Sin embargo, puede settakefocus=1 si desea que el marco para recibir clave de en
trada. Para manejar este tipo de entrada, tendr que crear enlaces para eventos de
teclado; vase la Seccin 54, "Eventos" (p. 157) Para obtener ms informacin sobre los
eventos y enlaces.
anchura La dimensin horizontal de la nueva trama. Vase la Seccin 5.1 , "dimensiones
" (p. 9). Este valor se ignorar a menos que usted tambin llamada.grid_propag-(0)
en el bastidor, consulte la Seccin 4.2 , "Otros gestin de la red- sao" (p. 7).
12.
Etiqueta TheLabel widget widgets puede mostrar una o ms lneas de texto en el mismo
estilo, o un mapa de bits o imagen. Para crear una etiqueta widget en una venta
na raz o frameparent :
w=tk.Etiqueta( parent,option,...)
El constructor devuelve el newLabel widget. Las opciones incluyen:
8,5 Tkinter 48 referencia Nuevo Mxico Tech Computer

mesa de centro 20.Etiqueta widget


activebackground opciones color de fondo que se mostrar cuando el ratn est sobre el
widget.
activeforeground color de primer plano que se mostrar cuando el ratn est sobre el w
idget
ancla Esta opcin controla el lugar en el que el texto se encuentra en el widget t
iene ms espacio que el texto necesita. El valor predeterminado isanchor=tk.CENTRO
, que centra el texto en el espacio disponible. Para otros valores, consulte la
seccin 5.5 , "Un- chors" (p. 12). Por ejemplo, si usted useanchor=tk.NW , el te
xto se coloca en la esquina superior izquierda de la espacio disponible.
bgorbackground El color de fondo de la zona de la etiqueta. Consulte la Seccin 5.
3 , "Colores" (p. 10).
mapa establecer esta opcin igual a un mapa de bits o objeto de imagen y la etique
ta aparecer el grfico. Consulte la Seccin 5.7 , "Mapas" (p. 12) Y en la Seccin 5.9 ,

"Im- las edades" (p. 14).


bdorborderwidth Ancho del borde alrededor de la etiqueta; vase la seccin 5.1 , "di
mensiones" (p. 9).
El valor predeterminado es de dos pxeles.
recinto si desea theLabel widget para mostrar tanto texto como un grfico (o un ma
pa de bits o una imagen), opcin thecompound speciies la orientacin relativa del grf
ico respecto al texto. Los valores pueden ser cualquier oftk.IZQUIERDA , ct. ,tk
.CENTRO ,tk.ABAJO , ortk.TOP . Por ejemplo, si usted specifycompound=ABAJO , el
grfico se mostrar debajo del texto.
cursor Cursor que aparece cuando el ratn se encuentra sobre esta etiqueta. Consul
te la Seccin 5.8 , "Cursores" (p. 13).
disabledforeground El color de primer plano que se mostrar cuando el widget'sstat
e es tk.DISABLED .
font Si va a mostrar texto en esta etiqueta (con opcin ortextvariable acumulacin d
elcampo, cardinas speciies opcin en la fuente que el texto se mostrar.
Consulte la seccin 5.4 "Type" (p. 10).
fgorforeground si desea mostrar texto o un mapa de bits en esta etiqueta, esta o
pcin speciies el color del texto. Si se muestra un mapa de bits, este es el color
que aparecer en la posicin de la 1-bits en el mapa de bits. Consulte la Seccin 5.3
, "Col- ors" (p. 10).
altura Height de la etiqueta en las lneas (no pxeles!). Si esta opcin no est selecc
ionada, la etiqueta se ajustar el tamao toit su contenido.
highlightbackground Color del foco resaltar cuando el widget no tiene el foco.
highlightcolor El color de los focus resaltar cuando el widget tiene foco.
highlightthickness Espesor de la atencin.
imagen para mostrar una imagen esttica en la etiqueta widget, establezca esta opc
in en un objeto image. Consulte la Seccin 5.9 , "Imgenes" (p. 14),
cmo justificar Speciies mltiples lneas de texto se alinea con respecto a los otros:t
k.forlush IZQUIERDA izquierda,tk.CENTRO de centrado (el valor predeterminado), o
a los conocimientos tradicionales.DERECHO a la derecha justiied.
padx espacio extra aadido a la izquierda y a la derecha del texto en el widget. P
or defecto es 1.
pady espacio extra aadido por encima y por debajo del texto en el widget. Por def
ecto es 1.
New Mexico Tech Computer Center Tkinter 8,5 49 referencia

a otros valores, vase la seccin 5.6 , "Socorro estilos" (p. 12). ; Asistencia Spe
ciies la aparicin de un borde decorativo alrededor de la etiqueta. El valor prede
terminado istk.
estado plano de forma predeterminada, un widget est en thetk.estado NORMAL. Estab
lecer esta opcin a los conocimientos tradicionales. DESACTIVADO para que no respo
nda a los eventos del mouse. El estado ser tk.activa cuando el ratn se encuentra s
obre el widget.
takefocus Normalmente, el enfoque no ciclo throughLabel widgets; vase la Seccin 53
, "Focus: enrutamiento entrada de teclado" (p. 155). Si desea que este widget p
ara ser visitado por el focus, settakefocus=1 . El
texto para mostrar una o ms lneas de texto en una etiqueta widget, establezca esta
opcin en una cadena que contiene el texto. Nueva l nea interna ( ' \n' ) se fuerz
a un salto de lnea.
textvariable al esclavo el texto que se muestra en una etiqueta widget a una var
iable de control de la clase StringVar , establezca esta opcin en esa variable. C
onsultarcaptulo 52, "Control varia- bles: los valores que sustentan los widgets"
(p. 153),
subrayado puede mostrar una lnea de subrayado (_) a continuacin thenth letra del t
exto, a partir de 0, al establecer esta opcin tonelada. El valor predeterminado i
sunderline=-1 , lo que significa que no subrayado.
Width de la etiqueta en caracteres (no pxeles!). Si esta opcin no est seleccionada

, la etiqueta se ajustar el tamao toit su contenido.


wraplengthYou puede limitar el nmero de caracteres de cada lnea por esta opcin con
el nmero deseado. El valor predeterminado, 0, significa que las lneas slo ser interr
umpida en saltos de lnea.
No hay mtodos especiales para la etiqueta otros widgets de las comunes (vase la Se
ccin 26, "Universal widget" (p. 97).
13. TheLabelFrame
TheLabelFrame widget widget, como delrespaldo widget, es un contenedor espacial
de un rea rectangular que puede contener otros widgets. Sin embargo, a diferencia
del marco widget, theLabelFrame widget permite mostrar una etiqueta como parte
de la frontera de la zona.
Este es un ejemplo de aLabelFrame twoButton widget con widgets. Tenga en cuenta
que la etiqueta "controles importantes" interrumpe la frontera. Este widget mues
tra el defaultGROOVE socorro (vase seccin 5.6 , "Socorro estilos" (p. 12), y el va
lor predeterminado de nw de ancla de la etiqueta, que coloca la etiqueta en el l
ado izquierdo de la parte superior del bastidor.
Para crear un widget newLabelFrame dentro de una ventana raz o frameparent :
w=tk.LabelFrame( parent,option,...)
50 8.5 referencia Tkinter Nuevo Mxico Tech Computer Center

este constructor devuelve el newLabelFrame widget. Opciones:


Cuadro 21.LabelFrame widget
bgorbackground opciones del color de fondo que se muestra en el widget; vase la s
eccin 5.3 , "Colores" (p. 10).
bdorborderwidth Ancho del borde alrededor del permetro del widget; vase Sec- 5.1 ,
"dimensiones" (p. 9). El valor predeterminado es de dos pxeles.
cursor selecciona el cursor que aparece cuando el ratn est sobre el widget; vase la
seccin 5.8 , "Cursores" (p. 13).
fgorforeground Color que se va a utilizar para el texto de la etiqueta. La
altura La dimensin vertical de la nueva trama. Esto se ignora, a menos que usted
tambin llamada.grid_propagate(0) en el bastidor, consulte la Seccin 4.2 , "Otros mt
odos de gestin grid" (p. 7).
highlightbackground Color del foco resaltar cuando el widget no tiene el foco.
highlightcolor El color de las focus resaltar cuando el widget tiene foco.
highlightthickness Espesor de la atencin.
labelanchorUse esta opcin para especificar la posicin de la etiqueta en el widget
de frontera.
La posicin predeterminada es "nw" , que coloca la etiqueta en el extremo izquierd
o del borde superior. Por lo que respecta a los nueve posiciones posibles de la
etiqueta, consulte este diagrama:
labelwidgetInstead de una etiqueta de texto, puede utilizar cualquier widget com
o etiqueta de widget que pasa como el valor de esta opcin. Si usted proporciona o
pciones y texto bothlabelwidget, acumulacin delcampo opcin se ignora.
padx Utilice esta opcin para agregar ms relleno interior los lados izquierdo y der
echo del widget. El valor es en pxeles.
pady Utilice esta opcin para agregar ms relleno dentro de la parte superior y la p
arte inferior del widget. El valor es en pxeles.
para otros valores, ver Seccin 5.6 , "Socorro estilos" (p. 12). ; Alivio Esta op
cin controla la apariencia de la frontera alrededor de la parte exterior del widg
et. El estilo predeterminado istk.RANURA
takefocus Normalmente, el widget no reciben el foco; alimentacin verdaderos valor
a esta opcin para hacer que el widget parte de la secuencia enfoque transversal.
Para obtener ms informacin, vea la Seccin 53, "Focus: enrutamiento entrada de tecl
ado" (p. 155). El
texto Texto de la etiqueta.
anchura La dimensin horizontal de la nueva trama. Esto se ignora, a menos que ust
ed tambin llamada.grid_propagate(0) en el bastidor; vase la seccin 4.2 , "Otros mtod

os de gestin grid" (p. 7).


New Mexico Tech Computer Center Tkinter 8,5 referencia 51

14. TheListbox widget


El propsito de un widget listbox es para mostrar un conjunto de lneas de texto. Po
r lo general, estn diseadas para permitir a los usuarios seleccionar uno o ms eleme
ntos de una lista. Todas las lneas de texto usan la misma fuente. Si necesita alg
o ms que un editor de texto, consulte la Seccin 24, "acumulacin delcampo widget" (p
. 82).
Para crear un nuevo widget listbox dentro de la ventana raz o frameparent :
w=tk.Listbox( parent,option,...)
Este constructor devuelve el newListbox widget. Opciones:
Cuadro 22.widget Listbox
activestyleThis opciones opcin speciies la aparicin de la lnea activa. Es posible q
ue alguno de estos valores:
"destacar" La lnea activa se destac. Esta es la opcin predeterminada.
"Dotbox' la lnea activa est encerrada en una lnea de puntos en los cuatro lados.
'Ninguno' la lnea activa no tiene apariencia especial.
bgorbackground El color de fondo en el cuadro de lista.
bdorborderwidth el ancho del borde alrededor de la lista. Por defecto es de dos
pxeles. Para pos- sible valores, consulte la Seccin 5.1 , "dimensiones" (p. 9).
cursor El cursor que aparece cuando el ratn est sobre el listbox. Consulte la Secc
in 5.8 , "Cursores" (p. 13).
disabledforeground El color del texto en el cuadro de lista cuando itsstate istk
.DISABLED .
exportselection De forma predeterminada, el usuario puede seleccionar texto con
el ratn, y el texto seleccionado se exportarn en el portapapeles. Para deshabilita
r este comportamiento, useexportse publi-=0 .
fuente La fuente utilizada para el texto en el cuadro de lista. Consulte la secc
in 5.4 "Type" (p. 10).
fgorforeground El color utilizado para el texto en el cuadro de lista. Consulte
la Seccin 5.3 , "Colores" (p. 10).
altura Nmero de lneas (no pxeles!), se muestra en el cuadro de lista. Por defecto e
s 10.
highlightbackground Color del foco resaltar cuando el widget no tiene el foco. Va
se Sec- 53, "Focus: enrutamiento entrada de teclado" (p. 155).
highlightcolor Color mostrado en el foco resaltar cuando el widget tiene el foco
.
highlightthickness Espesor de la atencin.
listvariable AStringVar que est conectado a la lista completa de los valores en e
l cuadro de lista (vase la Seccin 52, "variables de Control: los valores de los wi
dgets" (p. 153).
Si se llama a la.get() mtodo de thelistvariable , recibir una cadena de la forma e
achviis el contenido de una lnea de la "('V0','V1',... )" , donde listbox.
Para cambiar el conjunto de lneas en el cuadro de lista a la vez, llamada.set(s)e
n el listvariable , wheresis una cadena que contiene los valores de lnea con espa
cios entre ellos.
52 8.5 Referencia Tkinter Nuevo Mxico Tech Computer Center

por ejemplo, iflistCon aStringVar es asociado a un listbox listvariable la opcin,


esta llamada se fija la lista que contiene tres lneas:
listCon.set( 'ant beecicada")
Esta llamada que devuelva la cadena" ( 'ant' , 'abeja' , 'cigarra" ) ":
listCon.get()

de socorro selecciona tres de sombreado frontera efectos tridimensionales. El va


lor predeterminado istk.hundidos .
Para otros valores, vase la seccin 5.6 , "Socorro estilos" (p. 12).
selectbackground El color de fondo que se va a usar mostrar texto seleccionado.
si aumenta theselectborderwidth , las entradas se mueven ms lejos y la entrada se
leccionada showstk.planteadas (vase la seccin 5.6 , "Socorro estilos" (p. 12). ;
Selectborderwidth el ancho del borde alrededor de texto seleccionado. El valor p
or omisin es que el elemento seleccionado se muestra en un bloque slido de colorse
lectbackground
selectforeground El color de primer plano para utilizar mostrar texto selecciona
do.
selectmodeDetermines cmo muchos elementos que se pueden seleccionar, y cmo el ratn
arrastra apartahotel la seleccin:
tk.BUSCAR: Normalmente, slo se puede seleccionar una lnea de salida de un listbox.
Si hace clic en un elemento y, a continuacin, arrastre a una lnea diferente, la se
leccin seguir el ratn. Este es el valor predeterminado.
Los conocimientos tradicionales.SINGLE : slo se puede seleccionar una lnea y no se
puede arrastrar el ratn en cualquier lugar en el que haga clic en el botn 1, se se
lecciona dicha lnea.
Tk.MLTIPLES: puede seleccionar cualquier nmero de lneas a la vez. Al hacer clic en c
ualquier lnea alterna si es o no seleccionado.
Los conocimientos tradicionales.EXTENDED : Puede seleccionar cualquier grupo adya
cente de lneas a la vez haciendo clic en lnea theirst y arrastrando en la ltima lnea
.
estado de forma predeterminada, un listbox est en thetk.estado NORMAL. Para hacer
que el control listbox merca- sponsive a los eventos del mouse, establezca esta
opcin totk.DESHABILITADO .
takefocus Normalmente, la atencin se ficha a travs listbox widgets. Establecer est
a opcin en 0 para tener el widget de la secuencia. Vase la Seccin 53, "Focus: enrut
amiento entrada de teclado" (p. 155),
ancho el ancho del widget de caracteres (no pxeles!). La anchura se basa en un c
arcter promedio, por lo que algunas cadenas de esta longitud proporcional en las
fuentes pueden notit. El valor predeterminado es 20.
xscrollcommand si desea permitir que el usuario pueda desplazarse por la lista h
orizontal, puede vincular su widget listbox a una barra de desplazamiento horizo
ntal. Establezca esta opcin en el mtodo set de la barra de desplazamiento. Vea la
Seccin 14.1 , "Desplazamiento aListbox-" (p. 56) Para obtener ms informacin sobre l
ista desplazable widgets.
yscrollcommand si desea permitir que el usuario pueda desplazarse por la lista d
esplegable vertical, puede vincular su widget listbox a una barra de desplazamie
nto vertical. Establezca esta opcin en el mtodo set de la barra de desplazamiento.
Vea la Seccin 14.1 , "Desplazamiento aListbox-" (p. 56).
Un conjunto especial de ndice formas se utiliza para muchos de los mtodos de objet
os listbox:
Nuevo Mxico Tech Computer Center Tkinter 8,5 referencia 53

Si se especifica un ndice en forma de un nmero entero, que se refiere a la lnea en


el cuadro de lista con ese ndice, contando desde 0.
Indextk.FINAL se refiere a la ltima lnea de la lista.
Indextk.ACTIVA se refiere a la lnea seleccionada. Si el listbox permite varias op
ciones, que se refiere a la lnea que se seleccion por ltima vez.
Una cadena de ndice de la forma' @x,y"se refiere a la lnea ms cercana a coordenada
(x,y) en relacin con el widget de esquina superior izquierda.
Mtodos de objetos listbox incluyen:
.activar( index) Selecciona la lnea speciies givenindex el .
.Bbox(index) devuelve el cuadro delimitador de la lnea propsitos especi cos byindex
como una 4-tupla(xoffset,yoffset, anchura, altura), en donde el pxel superior de

la caja es en(xoffset,yoffset)y la anchura andheight en pxeles. La returnedwidth


valor incluye slo la parte de la lnea ocupada por texto.
Si la lnea propsitos especi cos por el ndice argumento no est visible, este mtodo retu
rnsNone . Si es parcialmente visible, el cuadro delimitador puede extenderse fue
ra de la zona visible.
.Curselection() devuelve una tupla que contiene los nmeros de lnea del elemento se
leccionado o elementos, contando desde 0.
Si no hay nada seleccionado, devuelve una tupla vaca.
.Delete(en primer lugar,=None) Elimina las lneas cuyos ndices estn en el rango [en
primer lugar ,ltimo ], inclusive (al contrario de la tpica Python idiom, donde dej
a de suprimir el ltimo ndice), contando desde 0. Si se omite el segundo argumento,
la nica lnea con indexfirst es eliminado.
.Get(primera,=None) Devuelve una tupla que contiene el texto de las lneas con ndic
es fromfirst campaade , inclusive. Si se omite el segundo argumento, devuelve el
texto de la lnea ms cercana tofirst .
.Index(i) si es posible, coloca la parte visible de la lista para que la lnea que
contiene indexiis en la parte superior del widget.
* Elementos .INSERT(INDEX,) Insertar una o ms lneas nuevas en la lista antes de la
lnea propsitos especi cos byindex . Theirst UseEND como argumento si desea agregar
nuevas lneas al final de la lista.
.Itemcget( index,opcin) recupera uno de los valores de opcin de speciic lnea en el
cuadro de lista. Para valores de opcin, seeitemconfig a continuacin. Si la opcin no
ha sido establecida para la lnea dada, el valor devuelto ser una cadena vaca.
.Itemconfig( index,option=value, ... ) cambiar una opcin de configuracin la lnea pr
opsitos especi cos byindex . Los nombres de las opciones incluyen:
antecedentes El color de fondo de la lnea determinada.
primer plano el color del texto de la lnea.
54 8.5 Referencia Tkinter Nuevo Mxico Tech Computer Center

selectbackground El color de fondo de la lnea dada cuando se selecciona.


selectforeground El color del texto de la lnea dada cuando est seleccionado.
.Ms cercano( y) devuelve el ndice de la lnea visible ms cercano a el y-coordinateyre
lative al widget listbox.
.Scan_dragto( x,y) Seescan_mark a continuacin.
.Scan_mark( x,y) Utilice este mtodo para implementar el anlisis constante de despl
azamiento rpido de un listbox. Para obtener esta caracterstica, enlazar algunos ev
entos de los botones del ratn a un controlador que callsscan_mark con la posicin a
ctual del ratn.
A continuacin, puede enlazar el <Motion>Evento a un controlador que callsscan_dra
gto con la posicin actual del ratn, y la lista se desplazar a una velocidad proporc
ional a la distancia entre la posicin registrada byscan_mark y la posicin actual.
.Ver(index) Ajuste la posicin de la lista para que la lnea mencionada byindex es v
isible.
.Selection_anchor( index) Coloque el"seleccin ancla" de la lnea seleccionada por e
l ndice argumento. Una vez que el ancla se ha colocado, puede hacer referencia a l
con el ndice especial formtk.ANCHOR .
Por ejemplo, en el caso de un listbox namedlbox , esta secuencia, seleccione las
lneas 3, 4 y 5:
lcaja elctrica.selection_anchor(3) lcaja elctrica.selection_set(tk.ANCHOR,5)
.selection_clear( primera,=None) Anula todas las lneas entre indicesfirst andlast
, inclusive. Si se omite el segundo argumento, quita la lnea con indexfirst .
.Selection_includes( index) devuelve un valor de 1 si la lnea con el givenindex e
st seleccionada, de lo contrario devuelve 0.
.Selection_set( primera,=None) Selecciona todas las lneas entre indicesfirst andl
ast , inclusive. Si se omite el segundo argumento, selecciona la lnea con indexfi
rst .
.Size() devuelve el nmero de lneas en el cuadro de lista.

.Xview() para hacer la lista desplazable horizontalmente, el comando de la opcin


desplazamiento horizontal asociados a este mtodo. Vea la Seccin 14.1 , "Desplazami
ento aListbox widget" (p. 56).
.Xview_moveto( fraccin) Desplazarse por la lista para que la leftmostfraction de
la anchura de la lnea ms larga est fuera de la parte izquierda de la lista. Fraccin
est en el intervalo [0,1 ].
.Xview_scroll( nmero, qu) se desplaza horizontalmente el listbox. Para thewhat argu
mento, use eithertk.LAS UNIDADES para desplazarse por los caracteres, ortk.PGINAS
para desplazarse por las pginas, es decir, por el ancho de la lista. Elnmero argu
mento indica cuntas para desplazarse; valores negativos mover el texto a la derec
ha dentro de los listbox, valores positivos izquierda.
New Mexico Tech Computer Center Tkinter 8,5 referencia 55

.yview() para hacer que el cuadro de lista desplegable vertical, el comando de l


a barra de desplazamiento vertical a este mtodo. Vea la Seccin 14.1 , "Desplazamie
nto aListbox widget" (p. 56).
.Yview_moveto( fraccin) Desplazarse por la lista para que la topfraction de la an
chura de la lnea ms larga se encuentra fuera de la parte izquierda de la lista. Fr
accin est en el intervalo [0,1 ].
.Yview_scroll( nmero, qu) se desplaza verticalmente el listbox. Para thewhat argume
nto, use eithertk.UNIDADES para desplazarse por las lneas, o tk.PGINAS para despla
zarse por las pginas, es decir, por la altura de la lista. Elnmero argumento indic
a cuntas para desplazarse; valores negativos mover el texto hacia abajo en el int
erior del listbox y valores positivos mueven el texto.
14.1 . Desplazamiento aListbox widget
aqu es un fragmento de cdigo que ilustran la creacin y vinculacin de un control list
box a una horizontal y una versin de un scrollbar.
self.yScroll = tk.scrollbar(self, orient=tk.VERTICAL) self.yScroll.grid(fila=0,
columna=1,sticky=tk.N+ct.S)
self.xScroll = tk.scrollbar(self, orient=tk.HORIZONTAL) self.xScroll.grid(fila=1
, columna=0,sticky=tk.E+tk.W)
self.tk =listbox.Listbox(self, xscrollcommand=self.xScroll.set, yscrollcommand=s
elf.yScroll.set) self.listbox.grid(fila=0, columna=0,sticky=tk.tk.N+S+tk.E+tk.W)
self.xScroll[ 'comando'] = self.listbox.xview self.yScroll[ 'comando'] = self.l
istbox.yview
15. El men widget
"drop-down) los mens son una forma muy popular de presentar al usuario con un nmer
o de opciones, de divi- espacio en la cara de la aplicacin cuando el usuario no e
st haciendo una eleccin.
UN menubutton es la parte que siempre aparece en la aplicacin.
Un men es una lista de opciones que aparece slo despus de que el usuario hace clic
en el menubutton.
Para seleccionar una opcin, el usuario puede arrastrar el ratn del menubutton en u
na de las opciones.
Como alternativa, puede hacer clic y soltar el menubutton: las opciones aparecer
y permanecer hasta que el usuario hace clic en uno de ellos.
La versin Unix de Tkinter (al menos) es compatible con "lgrimas de mens." Si usted,
como el diseador desea, una lnea de puntos que aparece sobre las opciones. El usu
ario puede hacer clic en esta lnea para "romper" el men: una nueva prc- aparece la
ventana independiente, que contiene las opciones.
Consulte la Seccin 16, "TheMenubutton widget" (p. 61), a continuacin, para ver cmo
crear un menubutton y conectarlo a un widget de men. Primero veamos el men widget,
que muestra la lista de opciones.
Las opciones que se muestran en la pantalla de men puede ser cualquiera de estas
cosas:
un comando simple: una cadena de texto (o imagen) que el usuario puede seleccion
ar para realizar algunas operaciones.

56 8.5 Referencia Tkinter Nuevo Mxico Tech Computer Center

una cascada: una cadena de texto o una imagen que el usuario puede seleccionar l
a opcin de mostrar otro men de opciones.
UN botn (vase la seccin 9, "TheCheckbutton widget" (p. 38)).
Un grupo de botones de opcin (ver la Seccin 20, "radiobutton widget" (p. 68).
Para crear un men widget, mustirst han creado aMenubutton , que callmb:
w=tk.Menu(mb, serie,...)
Este constructor devuelve el newMenu widget. Las opciones incluyen:
Cuadro 23.widget de Men opciones
activebackground El color de fondo que aparecer en una opcin cuando est bajo el ratn
. Consulte la Seccin 5.3 , "Colores" (p. 10).
activeborderwidth Speciies el ancho de una frontera trazada en torno a una elecc
in siempre y cuando est en la parte inferior del ratn. Por defecto es 1 pixel. Para
ver los valores posibles, consulte la Seccin 5.1 , "dimensiones" (p. 9).
activeforeground El color de primer plano que aparece en una eleccin cuando est ba
jo el ratn.
bgorbackground El color de fondo de las opciones que no estn bajo el ratn.
bdorborderwidth el ancho del borde alrededor de todas las opciones, consulte la
Seccin 5.1 , "dimensiones" (p. 9). El valor predeterminado es un pixel.
cursor El cursor que aparece cuando el ratn se encuentra sobre las opciones, pero
slo cuando el men se ha roto. Consulte la Seccin 5.8 , "Cursores" (p. 13).
disabledforeground El color del texto de los artculos whosestate istk.DISABLED .
fuente La fuente predeterminada de texto opciones. Consulte la seccin 5.4 "Type"
(p. 10).
fgorforeground El color de primer plano utilizado para las opciones que no estn b
ajo el ratn.
postcommandYou puede establecer esta opcin en un procedimiento, y de que el proce
so ser llamado cada vez que alguien abre este men.
El valor predeterminado 3-D effect para mens isrelief=tk.PLANTEADAS". Para obten
er informacin sobre otras opciones, consulte la Seccin 5.6 , "Socorro estilos" (p.
12).
selectcolorSpeciies el color que se muestra en checkbuttons y botones cuando se
seleccionan.
divisible por lo general, un men se puede desgarrar: theirst (posicin 0) en la lis
ta de opciones es ocupado por el desgarro de elemento y las opciones adicionales
se aaden, comenzando en la posicin 1. Si settearoff=0 , el men no presentan una ru
ptura de funcin, y las decisiones se aadir a partir de la posicin 0.
tearoffcommand Si usted quisiera que su programa sea notiied cuando el usuario h
ace clic en el desgarro de la inscripcin en el men, seleccione esta opcin para su p
rocedimiento. Se llama con dos argumentos: el ID de ventana de la ventana princi
pal, y el ID de la ventana de la nueva corte de raz del men ventana. El
ttulo Normalmente, el ttulo de un desgarro de ventana de men ser el mismo que el tex
to de la menubutton o en cascada que conducen a este men. Si desea cambiar el ttul
o de la ventana, establezca thetitle opcin de esa cadena.
Estos mtodos estn disponibles onMenu objetos. Las que crean las opciones en el men
tienen sus propias opciones particulares; vase la seccin 15.1 , "elemento de men cr
eacin (coption ) opciones" (p. 59).
New Mexico Tech Computer Center Tkinter 8,5 referencia 57

.ADD(KIND,COPTION,...) Aadir un nuevo elemento de la givenkind como la siguiente


opcin disponible en este men. Thekind argumento puede ser cualquiera de "cascada"
, "botn', 'comando', 'radiobutton', o "separador".
En funcin del tipo argumento, este mtodo es equivalente a .add_cascade() , .add_ch

eckbutton() , y as sucesivamente; consulte a los mtodos que se indican a continuac


in para obtener ms detalles.
.Add_cascade( coption, ... ) Aade un nuevo elemento en cascada como la siguiente
opcin disponible en este men. Utilice el men opcin en esta llamada se conecte la cas
cada al siguiente nivel del men, un objeto de typeMenu .
.Add_checkbutton( coption, ... ) Aade un nuevo botn a la siguiente opcin disponible
en s mismo. Las opciones le permiten configurar el botn de la misma forma que hay
que configurar un objeto Botn; vase la seccin 15.1 , "elemento de men creacin (copti
on ) opciones" (p. 59).
.Add_command( coption, ... ) Aade un nuevo comando como la siguiente opcin disponi
ble en s mismo. Utilice thelabel ,mapa orimage opcin para colocar texto o una imag
en en el men y utilice el comando opcin para conectar esta opcin a un procedimiento
que se llama cuando esta opcin est recogido.
.Add_radiobutton( coption, ... ) Aade un nuevo botn radial como la siguiente opcin
disponible en s mismo. Las opciones le permiten configurar la ra- diobutton en mu
cho la misma manera que hay que configurar aRadiobutton objeto; vase la seccin 20,
"El radiobutton widget" (p. 68).
.Add_separator Agregue un separador despus de la ltima opcin deined actualmente. Es
to es slo una lnea horizontal se puede utilizar para establecer los grupos de opci
ones. Los separadores son contados como opciones, por lo que si ya tienen tres o
pciones, y se aade un separador, el separador se ocupan posicin 3 (contando desde
0).
.Delete(ndice1 ndice2 =ninguno) Este mtodo elimina las opciones numeradas fromindex
1 throughindex2 , incluido. Para eliminar una opcin, omitir el ndice2 argumento. N
o se puede usar este mtodo para eliminar un desgarro de eleccin, pero se puede hac
er que en el men de objetos roturadel opcin 0.
.Entrycget( index,coption) para recuperar el valor actual de algunos coption par
a una eleccin, llame a este mtodo withindex establece en el ndice de esa eleccin and
coption en el nombre de la opcin deseada.
.Entryconfigure( index,coption,...) para cambiar el valor actual de una opcin som
ecoption, llame a este mtodo withindex establece en el ndice de la eleccin y un mor
ecoption=valor o argumentos.
.Index(i) devuelve la posicin de la opcin por propsitos especi cos ndicei. Por ejempl
o, se puede utilizar.index(tk.FINAL) toind el ndice de la ltima eleccin (orNone si
no existen opciones).
.Insert_cascade( index,coption,...) Inserta una nueva cascada en la posicin dada
byindex , contando desde 0. Las opciones despus de esa posicin, mover hacia abajo.
Las opciones son las mismas que las de.add_cascade() , supra.
.Insert_checkbutton( index,coption,...) Insertar un nuevo botn en la posicin de ndi
ce propsitos especi cos . Las opciones son las mismas que las de .add_checkbutton(
) , supra.
.Insert_command( index,coption,...) Insertar un nuevo comando en positionindex .
Las opciones son las mismas que las de.add_command() , supra.
58 8.5 Referencia Tkinter Nuevo Mxico Tech Computer Center

.insert_radiobutton( index,coption,...) Insertar un radiobutton nueva en positio


nindex . Las opciones son las mismas que las de.add_radiobutton() , supra.
.Insert_separator( index) Insertar un nuevo separador en la posicin propsitos espe
ci cos byindex .
.Invoke(index) llamadas "devolucin de llamada asociada con la eleccin de positioni
ndex . Si un botn, su estado se alterna entre set y borra; si un radiobutton, esa
opcin est establecida.
.Post(x,y) visualizar este men en la posicin (x,y) con respecto a la ventana raz.
.Tipo(index) devuelve el tipo de la eleccin propsitos especi cos byindex : eithertk
.CASCADA ,tk.BOTN , tk.COMMAND ,tk.RADIOBUTTON ,tk.SEPARATOR , ortk.DIVISIBLE .
.Yposition( n) Para thenthmenu eleccin, devolver el ofset vertical en pxeles con r
especto a la parte superior del men. El propsito de este mtodo es que permite coloc

ar un men emergente precisamente con respecto a la posicin actual del ratn.


15.1 .Elemento de men creacin (coption ) opciones
donde el men mtodos descritos anteriormente, permiten acoption , usted puede solic
itar un valor a cualquiera de los nombres de las opciones a continuacin utilizand
o el nombre de la opcin como una palabra clave con el valor deseado. Por ejemplo,
para hacer que un comando de texto aparecen con letras rojas, utilice la opcin "
primer plano= "rojo", como una opcin para theadd_command llamada al mtodo.
Tabla 24.Men
del acelerador itemcoption valores para mostrar un "acelerador " combinacin de te
clas en la parte derecha de una opcin de men, utilice la opcin "acelerador" wheresi
s= s una cadena de caracteres que contiene el tpicamente que se mostrarn. Por ejem
plo, para indicar que un comando no tiene Control-X como su acelerador, utilice
la opcin "acelerador= ' ^X' ". Tenga en cuenta que esta opcin no se llevan a la p
rctica el acelerador; use un capturador enlace a hacerlo.
activeback- El color de fondo utilizado por las opciones que se encuentren bajo
el ratn.
suelo
activefore- El color de primer plano utilizado para elegir cuando se encuentran
en la parte inferior del ratn.
antecedentes El color de fondo utilizado para elegir cuando no estn a cargo del r
atn. Tenga en cuenta que este no se pueden abreviar asbg.
Pantalla de mapa un mapa de bits para esta eleccin; vase la seccin 5.7 , "mapas de
bits" (p. 12).
columnbreak normalmente todas las opciones se muestran en una larga columna. Si
setcolumn- break=1 , esta opcin se iniciar una nueva columna a la derecha de uno q
ue contiene la eleccin anterior.
Utilice la opcin columnbreak"columnbreak=True" para iniciar una nueva columna de
opciones con esta opcin.
mando un procedimiento que se va a llamar cuando esta opcin est activada.
compoundIf desea mostrar tanto texto como un grfico (o un mapa de bits o una imag
en) en una opcin de men, utilice thiscoption para especificar la ubicacin de la ima
gen respecto al texto. Los valores pueden ser cualquier oftk.IZQUIERDA ,tk. ,tk.
TOP ,tk.ABAJO ,tk.CENTRO,
Nuevo Mxico Tech Computer Center Tkinter 8,5 referencia 59

ortk.NINGUNO . Por ejemplo, un valor de "compuesto=tk.TOP " colocacin del grfico p


or encima del texto.
font La fuente utilizada para representar thelabel texto. Consulte la seccin 5.4
"Type" (p. 10)
Primer plano El color de primer plano utilizado para elegir cuando no estn en el
ratn. Tenga en cuenta que este no se pueden abreviar asfg.
hidemargin De forma predeterminada, un pequeo margen separa al lado opciones en u
n men. Utilice thecoption "hidemargin=True " para eliminar este margen. Por ejemp
lo, si las opciones son muestras de colores en una paleta, esta opcin har que los
selectores toque sin ninguna otra intervencin color. La
imagen muestra una imagen de esta eleccin; vase la seccin 5.9 , "Imgenes" (p. 14).
La cadena de texto que aparece para esta opcin de
men Esta opcin slo se utiliza para las opciones en cascada. Submen de objeto que mue
stra el siguiente nivel de opciones.
offvalueNormally, la variable de control de botn se establece en0cuando el botn. P
uede cambiar el valor de esta opcin en el valor deseado. Consulte la Seccin 52, "v
ariables de Control: los valores que sustentan los widgets" (p. 153).
onvalue Normalmente, la variable de control de un botn se establece en1cuando el
botn est activado. Puede cambiar el valor de configuracin de esta opcin en el valor
deseado.
selectcolor Normalmente, el color que se muestra en un conjunto botn o radiobutto
n es rojo. Cambiar el color de esta opcin el color que desee; consulte la Seccin 5

.3 , "Col- ors" (p. 10).


selectimage Si est utilizando la imagen opcin para mostrar un grfico en lugar de te
xto en un men o botn radiobutton, si useselectimage= I, imageIwill se mostrar cuand
o el elemento est seleccionado,
normalmente, todas las opciones reaccionar a los clics del ratn, pero puede setst
ate=tk.discapacitados a gris, y que no responde. Se Thiscoption betk.ACTIVO cuan
do el ratn se encuentra sobre la eleccin.
subrayar Normalmente ninguno de las letras de thelabel estn subrayadas. Establezc
a esta opcin en el ndice de una carta para subrayar esa carta.
valor Speciies el valor de la variable de control (vase la Seccin 52, "variables d
e Control: los valores que sustentan los widgets" (p. 153) Para un radiobutton.
Este puede ser un nmero entero si la variable de control es anIntVar , o una cade
na, si la variable de control es un StringVar .
variableFor checkbuttons o botones de opcin, esta opcin se debe establecer en la v
ariable de control asociado con el botn o de un grupo de botones de radio. Consul
te la Seccin 52, "variables de Control: los valores que sustentan los widgets" (p
. 153).
15.2 . Los mens de alto nivel
especialmente bajo MacOS, a veces es conveniente crear mens que se muestran como
parte del nivel superior de ventana. Para ello, siga estos pasos.
1. Utilizando cualquier widgetW, obtener la ventana de nivel superior mediante l
a.winfo_toplevel().
2. Submen Crear widget, utilizando la ventana de nivel superior como theirst argu
mento.
3. Los elementos agregados a thisMenu widget se muestran en la parte superior de
la aplicacin.
60 8.5 Referencia Tkinter Nuevo Mxico Tech Computer Center

aqu un breve ejemplo. Asumir thatself es la instancia de la aplicacin, una instanc


ia de una clase que herede fromFrame . Este cdigo crea un men de nivel superior el
eccin denominada "ayuda" con una opcin llamada "Acerca de" que llama a un controla
dor namedself.__aboutHandler :
superior=self.winfo_toplevel() self.tk =barra.Menu(top) en la parte superior[ 'm
enu'] = self.barra self.tk =submen.Menu(self.menuBar) auto.menuBar.add_cascade(la
bel= 'Ayuda', menu=self.submen) self.submen.add_command(label= "Acerca de", comman
d=self.__aboutHandler)
hay alguna variacin en el comportamiento dependiendo de la plataforma.
En sistemas Windows o Unix, el men de nivel superior las opciones aparecen en la
parte superior de la ventana principal de la aplicacin.
En MacOS X, el nivel superior aparecen las opciones de men en la parte superior d
e la pantalla cuando la aplicacin est activa, donde los usuarios de Mac esperan a
ver.
Debe utilizar el.add_cascade() mtodo para todos los elementos que desee en la bar
ra de men superior. Las llamadas a.add_checkbutton() , .add_command() , o.add_rad
iobutton() ser ignorado.
16.
UN menubutton TheMenubutton widget es la parte de un men desplegable que permanec
e en pantalla en todo momento. Cada menubutton se asocia con submen widget (vase ms
arriba) que se pueden mostrar las opciones para que menubutton cuando el usuari
o hace clic en ella.
Para crear un menubutton dentro de una ventana raz o frameparent :
w=tk.Menubutton( parent,option,...)
El constructor devuelve el newMenubutton widget. Opciones:
Cuadro 25.Menubutton widget
activebackground opciones El color de fondo cuando el ratn est sobre el menubutton
. Consulte Seccin 5.3 , "Colores" (p. 10).
activeforeground El color de primer plano cuando el ratn est sobre el menubutton

ancla Este controles de opciones donde se encuentra posicionado el texto si el w


idget tiene ms espacio que el texto necesita. El valor predeterminado isanchor=tk
.CENTRO , que centra el texto. Para obtener informacin sobre otras opciones, cons
ulte la Seccin 5.5 , "anclajes" (p. 12). Por ejemplo, si usted useanchor=tk.W ,
el texto se centra en el lado izquierdo del widget.
bgorbackground El color de fondo cuando el mouse no est sobre el menubutton.
mapa para mostrar un mapa de bits en la menubutton, establezca esta opcin en un m
apa nombre; consulte la Seccin 5.7 , "Mapas" (p. 12).
bdorborderwidth Ancho del borde alrededor del menubutton. Por defecto es de dos
pxeles. Para ver los valores posibles, consulte la Seccin 5.1 , "dimensiones" (p.
9).
compuesto Si especifica tanto texto y un grfico (o un mapa de bits o una imagen),
esta opcin speciies el grfico aparece en relacin con el texto. Valores posibles ar
etk.NINGUNO (el valor predeterminado), tk.TOP ,tk.EN RESUMEN ,tk.IZQUIERDA ,
Nuevo Mxico Tech Computer Center Tkinter 8,5 referencia 61

ct., andtk.CENTRO . Por ejemplo, compuesto=tk.DERECHO, colocar el grfico que apar


ece a la derecha del texto. Si specifycom- libra=tk.NINGUNO , el grfico se muestr
a pero acumulacin delcampo (si los hay) no lo es.
cursor El cursor que aparece cuando el ratn est sobre este menubutton. Consulte Se
ccin 5.8 , "Cursores" (p. 13).
direccin Normalmente, el men aparecer debajo del menubutton. Setdirec-=tk.izquierda
para mostrar el men de la izquierda del botn; usedirec-=tk.derecha para mostrar e
l men de la derecha del botn, o bien utilice direccin= 'arriba' para colocar el men
arriba del botn.
disabledforeground El color de primer plano se muestra en esta menubutton cuando
est desactivado.
fgorforeground El color de primer plano cuando el ratn no est en los menubutton.
consulte la Seccin 5.4 , "fuentes de tipo" (p. 10). ; Font Speciies la fuente ut
ilizada para mostrar acumulacin delcampo
altura del menubutton en lneas de texto (no pxeles!). El valor predeterminado es
el tamao del menubutton a su contenido.
highlightbackground Color del foco resaltar cuando el widget no tiene el foco. Va
se Sec- 53, "Focus: enrutamiento entrada de teclado" (p. 155).
highlightcolor Color mostrado en el foco resaltar cuando el widget tiene el foco
.
highlightthickness Espesor de la concentracin.
imagen para mostrar una imagen en este menubutton, establezca esta opcin en el ob
jeto image.
Consulte la Seccin 5.9 , "Imgenes" (p. 14).
justificar Esta opcin controla si el texto se encuentra cuando el texto no hasta
el menubutton: usejustify=tk.IZQUIERDA a la izquierda de justificar el texto (es
te es el por defecto); usejustify=tk.centro a centro, orjustify=tk.DERECHO a der
echo de justificar.
men para asociar el menubutton con un conjunto de opciones, establezca esta opcin
en el men objeto que contiene las opciones. Ese men objeto debe haber sido creado
por pasar el asociado menubutton al constructor como itsirst argumento. Vea a co
ntinuacin un ejemplo que muestra cmo asociar un menubutton y men.
padx cunto espacio para dejar a la izquierda y a la derecha del texto del menubut
ton.
Por defecto es 1.
pady cunto espacio para dejar por encima y por debajo el texto de la menubutton.
Por defecto es 1. El
socorro Normalmente, se havetk menubuttons.apariencia elevada. Para otros efecto
s 3-d, vase la seccin 5.6 , "Socorro estilos" (p. 12) El
estado normalmente, menubuttons responde al ratn. Setstate=tk.DISCAPACITADOS para
sombrear la menubutton y hacer que no responde.

takefocus normalmente, menubuttons no tome foco del teclado (consulte la Seccin 5


3, "Focus:
enrutamiento entrada de teclado" (p. 155)). Usetakefocus=True para agregar la m
enubutton en el enfoque transversal.
texto para mostrar texto en la menubutton, configurar esta opcin a la cadena que
contiene el texto que desee. Nuevas lneas ( ' \n') dentro de la cadena, saltos de
lnea.
textvariable puede asociar un control variable de classStringVar menubutton con
este. Ajuste variable de control que va a cambiar el texto que se muestra.
Consulte la Seccin 52, "variables de Control: los valores que sustentan los widge
ts" (p. 153).
62 8.5 Referencia Tkinter Nuevo Mxico Tech Computer Center

subrayar normalmente, no aparecer en el texto del menubutton. Para naciona- uno d


e los personajes, establezca esta opcin en el ndice de ese personaje.
width del menubutton en caracteres (no pxeles!). Si esta opcin no est seleccionada
, la etiqueta se ajustar el tamao toit su contenido.
wraplengthNormally, las lneas no estn envueltos. Puede establecer esta opcin en un
nmero de caracteres y en todas las lneas, se rompe en pedazos no ms de esa cantidad
.
Aqu est un breve ejemplo que muestra la creacin de un menubutton y su men asociado c
on dos casillas de verificacin:
self.mb=tk.Menubutton(self, text= "condimentos", socorro=ELEVADO) self.mb.grid()
self.mb.menu = tk.Menu(self.mb, divisible= 0) self.mb[ 'menu'] = self.mb.men de
autoservicio.mayoVar = tk.IntVar() self.tk. =ketchVar IntVar() self.mb.menu.add_
checkbutton(label= "mayo", variable=self.mayoVar) self.mb.menu.add_checkbutton(l
abel= "ketchup", variable=self.ketchVar)
Este ejemplo crea un menubutton labeledcondiments . Cuando se hace clic en l, dos
checkbuttons etiqueta mayo andketchup descender.
17. Elmensaje widget
Este widget es similar a theLabel widget (vase la seccin 12 "TheLabel widget" (p.
48), pero se tiene la intencin de mostrar los mensajes en varias lneas. Todo el te
xto se mostrar en la misma fuente; si usted necesita para mostrar el texto con ms
de una fuente, vase la seccin 24, "acumulacin delcampo widget" (p. 82).
Para crear un widget newmessage como el nio de la ventana raz o bastidor namedpare
nt :
w=tk.Mensaje( parent,option,...)
Este constructor devuelve newmessage widget. Las opciones pueden ser cualquiera
de estos:
Cuadro 26.Mensaje widget
aspecto opciones Utilice esta opcin para especificar la relacin entre el alto y el
ancho en forma de porcentaje. Por ejemplo, aspecto=100 te dara un texto messagei
t en la plaza; withaspect=200 , el rea de texto sera dos veces ms ancho que alto. E
l valor predeterminado es 150, es decir, el texto se beit en una casilla 50% may
or de lo que es alta.
bgorbackground El color de fondo detrs del texto; vase la seccin 5.3 , "Colores" (p
. 10).
bdorborderwidth Ancho del borde alrededor del widget; vase la seccin 5.1 , "dimens
iones" (p. 9). El valor predeterminado es de dos pxeles. Esta opcin slo es visible
cuando se nottk therelief opcin.PLANA .
cursor Speciies el cursor que aparece cuando el ratn est sobre el widget; vase la s
eccin 5.8 , "Cursores" (p. 13).
New Mexico Tech Computer Center Tkinter 8,5

fuente referencia 63 Speciies fuente utilizada para mostrar el texto en el widge


t, vase la seccin 5.4 , "Type" (p. 10).
fgorforeground Speciies el color del texto; vase la seccin 5.3 , "Colores" (p. 10)
.
highlightbackground Color de las focus resaltar cuando el widget no tiene el foc
o. Vase Sec- 53, "Focus: enrutamiento entrada de teclado" (p. 155).
highlightcolor Color mostrado en el foco resaltar cuando el widget tiene el foco
.
highlightthickness Espesor de la atencin.
justificar Utilice esta opcin para especificar cmo varias lneas de texto estn alinea
dos. Usejus- dro=tk.IZQUIERDA para obtener un margen izquierdo recto;justifique=
tk.centro a centro cada lnea; andjustify=tk.derecho a obtener un margen derecha r
ecta.
padx Utilice esta opcin para agregar espacio adicional dentro del widget a la izq
uierda y a la derecha del texto. El valor es en pxeles.
pady Utilice esta opcin para agregar espacio adicional dentro del widget por enci
ma y por debajo del texto. El valor es en pxeles.
alivio esta opcin speciies la aparicin de la frontera alrededor de la parte exteri
or de la widget; vase la seccin 5.6 , "Socorro estilos" (p. 12). El estilo predet
erminado es tk.PLANA .
takefocus normalmente, que deje unmensaje widget no adquirir foco (vase la Seccin 5
3, "Focus:
enrutamiento entrada de teclado" (p. 155)). Usetakefocus=True para aadir el widg
et a la travesa lista.
texto El valor de esta opcin es el texto que se muestra en el widget.
textvariable Si que le gustara poder cambiar el mensaje bajo el control del progr
ama, asociar esta opcin con aStringVar ejemplo (vase la Seccin 52, "variables de Co
ntrol: los valores que sustentan los widgets" (p. 153)). El valor de esta varia
ble es el texto que se mostrar. Si se especifica bothtext andtextvariable opcione
s, acumulacin delcampo opcin se ignora.
anchura Utilice esta opcin para especificar el ancho del rea de texto en el widget
, en pxeles.
El ancho predeterminado depende del texto que se muestra y el valor de delsegn- o
pcin.
18. Widget TheOptionMenu
El propsito de este widget es ofer aixed conjunto de opciones al usuario en un me
n desplegable.
La ilustracin de arriba muestra anOptionMenu en dos estados. El ejemplo de izquie
rda muestra el widget en su forma inicial. El ejemplo de la derecha muestra el a
specto que tiene cuando el ratn se ha hecho clic en l y lo arrastraron hacia abajo
de la "barca" eleccin.
64 8.5 Referencia Tkinter Nuevo Mxico Tech Computer Center

para crear un widget newOptionMenu como el nio de la ventana raz o bastidor namedp
arent :
w=tk.OptionMenu( parent,variable,choice1,choice2,...)
Este constructor devuelve el newOptionMenu widget. Labomba es aStringVar ejemplo
(vase la Seccin 52, "variables de Control: los valores que se encuentran tras los
widgets" (p. 153) Que se asocia con el widget, y el resto de los argumentos son
las opciones que se muestran en el widget como cadenas.
La ilustracin de arriba se ha creado con este fragmento de cdigo:
optionList = ( 'tren' , 'plano' , 'boat") self.v = tk.StringVar() self.v.(option
List[ 0]) self.om = tk.OptionMenu(self, self.v, * optionList)
Para ind de qu opcin es seleccionada en anOptionMenu widget, el mtodo get(), en la
variable de control asociados, devolver ese eleccin como una cadena.
19. Widget ThePanedWindow
thePanedWindow El propsito de widget es para que el usuario de la aplicacin algn co

ntrol sobre cmo se divide el espacio dentro de la aplicacin.


APanedWindow es algo as como un cuadro: es un contenedor para nio widgets. EachPan
edWindow widget contiene una pila horizontal o vertical de los nios los widgets.
Con el ratn, el usuario puede arrastrar los lmites entre el nio widgets hacia adela
nte y hacia atrs.
Puede optar por mostrar las manijas en el widget. Un identificador es un pequeo c
uadrado que el usuario puede arrastrar con el ratn.
Usted puede elegir para hacer bufandas visible. UNA banda es un bar situado entr
e el nio widgets.
Un panel es el rea ocupada por un nio widget.
Para crear un widget newPanedWindow como el nio de la ventana raz o bastidor named
parent :
w=tk.PanedWindow( parent,option,...)
Este constructor devuelve el newPanedWindow widget. Las opciones son las siguien
tes:
Nuevo Mxico Tech Computer Center Tkinter 8,5 referencia 65

Tabla 27.PanedWindow widget


bgorbackground opciones muestra el color de fondo detrs del nio widgets; vase la se
ccin 5.3 , "Colores" (p. 10).
bdorborderwidth Ancho del borde alrededor de la parte exterior del widget; vase l
a seccin 5.1 , "dimensiones" (p. 9). El valor predeterminado es de dos pxeles.
cursor El cursor que se mostrar cuando el ratn est sobre el widget; consulte la Sec
cin 5.8 , "Cursores" (p. 13).
handlepadUse esta opcin para especificar la distancia entre la palanca y el extre
mo de la banda. Fororient=tk.VERTICAL , es la distancia entre el extremo de la i
zquierda de la guillotina y la empuadura; fororient=tk.HORIZONTAL , es la distanc
ia entre la parte superior de la ventanilla y el mango. El valor predeterminado
es de ocho pxeles; para otros valores, consulte la Seccin 5.1 , "dimensiones" (p.
9).
handlesize Utilice esta opcin para especificar el tamao de la empuadura, que es sie
mpre un cuadrado; vase la seccin 5.1 , "dimensiones" (p. 9). El valor predetermin
ado es de ocho pxeles de
altura Speciies la altura del widget; vase la seccin 5.1 , "dimensiones" (p. 9).
Si no se especifica esta opcin, la altura est determinada por la altura del nio wid
gets.
opaqueresize Esta opcin controla la operacin de cambio de tamao. Para el valor pred
eterminado, opaqueresize=True (Verdadero), el tamao se lleva a cabo continuamente
como la banda se arrastra.
Si esta opcin se establece en false , la guillotina y nios adyacente (widgets) per
manece hasta que el usuario suelta el botn del mouse y, a continuacin, salta a la
nueva posicin.
orientar a pila nio widgets al lado, useorient=tk.HORIZONTAL . Pila de ellos arri
ba a abajo, useorient=tk.VERTICAL .
socorro socorro selecciona el estilo del borde alrededor del widget; vase la secc
in 5.6 , "Socorro estilos" (p. 12). El valor predeterminado istk.PLANA .
sashpad Utilice esta opcin para asignar espacio adicional en cada lado de cada ba
nda. El valor por omisin es cero; para otros valores, consulte la Seccin 5.1 , "di
mensiones" (p. 9),
esta opcin speciies sashrelief el socorro estilo utilizado para representar el me
rcader; vase la seccin 5.6 , "Socorro estilos" (p. 12). El estilo predeterminado
istk.PLANA .
sashwidthSpeciies la anchura de la banda; vase la seccin 5.1 , "dimensiones" (p. 9
). El ancho predeterminado es de dos pxeles.
showhandle Useshowhandle=True para mostrar los mangos. Para el valor predetermin
ado, False , el usuario puede utilizar el ratn para mover el mercader. La empuadur
a es simplemente una indicacin visual.

width del widget; vase la seccin 5.1 , "dimensiones" (p. 9). Si no se especifica
un valor, el ancho ser determinado por el tamao del nio widgets.
Aadir widgets a nios aPanedWindow , crear al nio los widgets en los nios de la paren
tPanedWindow , pero en lugar de utilizar la.grid() mtodo para registrar, utilice
el.mtodo add() en thePanedWin de dow .
Aqu estn los mtodos onPanedWindow widgets.
.ADD(CHILD[,OPTION=VALUE]...) utilizar este mtodo para agregar el widget givenchi
ld como el prximo hijo de thisPanedWindow . En primer lugar, crear widget con nio
thePanedWindow widget como su padre, pero no llame a la.grid() mtodo para registr
ar. A continuacin, llame.add(hijo)y el nio le aparezca dentro thePanedWindow en la
siguiente posicin disponible.
66 8.5 Referencia Tkinter Nuevo Mxico Tech Computer Centro

asociado con cada nio es un conjunto de configuracin opciones que controlan su pos
icin y su aspecto.
Consulte la Seccin 19.1, "opciones configuracin PanedWindow nio" (p. 67). Usted pu
ede proporcionar a estos conig- ble como palabra clave opciones argumentos al mto
do add(). Tambin puede establecer o cambiar sus valores en cualquier momento con
el.paneconfig() , o recuperar el valor actual de cualquier de estas opciones con
el.panecget() mtodo; estos mtodos se describen a continuacin.
.Olvidar(nio) Elimina un nio widget.
.Identificar( x,y para una determinada ubicacin(x,y) en las coordenadas de ventan
a, este mtodo devuelve un valor que describe la funcin de esa ubicacin.
Si la caracterstica es un nio cristal, el mtodo devuelve una cadena vaca.
Si la caracterstica es un fajn, el mtodo devuelve una tupla(n, "guillotina") wheren
is 0 guillotina para el irst, 1 para el segundo y as sucesivamente.
Si la caracterstica es un mango, el mtodo devuelve una tupla(n, 'asa') wherenis 0
para la primera, 1 para el segundo y as sucesivamente.
.Panecget( nio,opcin) Este mtodo recupera el valor de la opcin configuracin widget hi
jo, es que el nio wherechild andoption widget es el nombre de la opcin tal y como
una cadena. La lista de nios configuracin widget opciones, consulte la seccin 19.1,
"opciones configuracin PanedWindow nio" (p. 67).
.Paneconfig( child,option=value,...) utilizar este mtodo para conigure opciones p
ara nio widgets. Las opciones se describen en la Seccin 19.1 , "PanedWindow nio opc
iones configuracin" (p. 67).
.Paneles() Este mtodo devuelve una lista de los nios los widgets, en orden de izqu
ierda a derecha (fororient=tk.hori- zontales ) o en la parte superior a la infer
ior (fororient=tk.VERTICAL ).
esta es la misma accin que el.olvida(). ; .Remove(nio) Elimina el givenchild
.sash_coord( index) Este mtodo devuelve la ubicacin de un fajn. Elndice argumento se
lecciona la guillotina: 0 para la guillotina theirst entre dos nios, 1 para la ba
nda entre el segundo y el tercer nio, y as sucesivamente. El resultado es una tupl
a(x,y)que contiene las coordenadas de la esquina superior izquierda de la guillo
tina.
.Sash_place( index,x,y) este mtodo se utiliza para colocar la banda seleccionada
byindex (0 para theirst guillotina, y as sucesivamente). Thexand coordenadasy es
pecificar la nueva posicin deseada de la esquina superior izquierda de la guillot
ina. Tkinter ignora las coordenadas ortogonales a la orientacin del widget: El us
o thexvalue para volver a colocar la banda fororient=tk.HORIZONTAL y utilizar th
eycoordinate para mover la banda por optionori- ent=tk.VERTICAL .
19.1 .PanedWindow nio las opciones de configuracin
de cada nio aPanedWindow dispone de un conjunto de configuracin opciones que contr
olan su posicin y apariencia.
Estas opciones se pueden siempre cuando el nio se agrega con el mtodo add() o un c
onjunto con el.pan- econfig(), o consultarse con el.panecget() mtodos descritos a
nteriormente.
New Mexico Tech Computer Center Tkinter 8,5 referencia 67

Tabla 28.PanedWindow nio widget


afterNormally opciones, cuando.add() un nuevo nio a aPanedWindow , el nuevo hijo
es aadido despus de cualquier hijo widgets. En su lugar, puede utilizar la=woption
para insertar el nuevo widget en una posicin slo despus de que un nio widgetw.
antes cuando se utiliza como optionbefore=win una llamada al mtodo add(), coloca
el nuevo widget en una posicin justo antes de que la los nios widgetw.
altura Esta opcin speciies la altura deseada del nio widget; vase la seccin 5.1 , "d
imensiones" (p. 9).
minsize Utilice esta opcin para especificar un tamao mnimo para el nio widget en el
sentido de la orientacin de PanedWindow. Fororient=tk.HORIZONTAL , esta es la anc
hura mnima; fororient=tk.VERTICAL , es la altura mnima. Para valores admisibles, va
se Sec- 5.1 , "dimensiones" (p. 9).
padx la cantidad de espacio adicional que se agrega a la izquierda y a la derech
a del nio widget; vase Sec- 5.1 , "dimensiones" (p. 9).
pady la cantidad de espacio adicional que se aade por encima y por debajo del wid
get hijo; vase la seccin 5.1 , "dimensiones" (p. 9).
sticky Esta opcin funciona como argumento thesticky al grid() mtodo; vase la seccin
4.1 , "El grid() mtodo" (p. 6). Que speciies cmo colocar un nio widget si el panel
es de mayor tamao que el widget. Por ejemplo, sticky=tk.NW, colocar el widget de
la esquina superior izquierda ( "noroeste") esquina del panel.
widthDesired ancho del widget hijo; vase la seccin 5.1 , "dimensiones" (p. 9).
20. Widget
Botones radiobutton son conjuntos de widgets que permiten al usuario seleccionar
slo uno de un conjunto de opciones. Radiobutton Cada uno consta de dos partes, e
l indicador y la etiqueta:
El indicador es la forma de diamante que se pone rojo en el elemento seleccionad
o.
La etiqueta es el texto, aunque se puede utilizar una imagen o mapa de bits como
la etiqueta.
Si lo prefiere, puede prescindir de los indicadores. Esto hace que los botones c
omo "push-push" botones, con la entrada seleccionada aparece hundida y el resto
aparecen planteadas.
Para formar varios botones en un grupo funcional, crear una nica variable de cont
rol (consulte la Seccin 52, "variables de Control: los valores que se encuentran
tras los widgets" (p. 153), a continuacin), y establecer la opcin de cada radiobut
ton para esa variable.
La variable de control puede ser anIntVar o aStringVar . Si dos o ms botones comp
arten la misma variable de control, cualquiera de ellos se borrar los dems.
Cada radiobutton en un grupo deben tener una opcin uniquevalue del origen del mis
mo tipo que la variable de control.
Por ejemplo, un grupo de tres botones y podra compartir anIntVar tienen valores d
e 0, 1 y 99.
O puede utilizar aStringVar variable de control y la radiobuttonsvalue opciones
como "demasiado caliente', 'toocold", y "haciendo bien".
68 8.5 Referencia Tkinter Nuevo Mxico Tech Computer Center

para crear un nuevo widget radiobutton como el nio de la ventana raz o bastidor na
medparent :
w=tk.radiobutton( parent,option,...)
Este constructor devuelve el newRadiobutton widget. Opciones:
Cuadro 29.radiobutton
activebackground widget opciones El color de fondo cuando el ratn est sobre el rad
iobutton. Consulte Seccin 5.3 , "Colores" (p. 10).

activeforeground El color de primer plano cuando el ratn est sobre el radiobutton.


ancla si el widget habita en un espacio ms grande de lo que necesita, esta opcin s
peciies donde el radiobutton se sentar en ese espacio. El valor predeterminado is
anchor=tk.CEN- TER. Para otras opciones de colocacin, consulte la Seccin 5.5 , "an
clajes" (p. 12). Por ejemplo, si usted setanchor=tk.NE , el radiobutton ser colo
cado en la esquina superior derecha del espacio disponible.
bgorbackground El color de fondo normal detrs del indicador y etiqueta.
mapa de bits a mostrar una imagen en blanco y negro en un radiobutton, establezc
a esta opcin en un mapa de bits, consulte la Seccin 5.7 , "Mapas" (p. 12).
bdorborderwidth El tamao de la frontera en relacin con el indicador. Por defecto e
s de dos pxeles.
Para ver los valores posibles, consulte la Seccin 5.1 , "dimensiones" (p. 9),
mando un procedimiento que se llama cada vez que el usuario cambia el estado de
la radi- obutton.
compuesto Si se especifica tanto el texto como un grfico (o un mapa de bits o una
imagen), esta opcin speciies el grfico aparece en relacin con el texto. Valores po
sibles aretk.NINGUNO (el valor predeterminado), tk.TOP ,tk.PARTE INFERIOR ,tk.IZ
QUIERDA , tk., andtk.CENTRO . Por ejemplo, compuesto=tk.PARTE INFERIOR, coloque
el grfico debajo del texto. Si specifycompound=tk.NINGUNO , el grfico se muestra p
ero acumulacin delcampo (si los hay) no lo es.
cursor Si la opcin est establecida en un cursor nombre (vase la seccin 5.8 , "Cursor
es" (p. 13), el cursor del ratn se cambio a este modelo cuando est por encima de l
a radio.
disabledforeground El color de primer plano utilizado para representar el texto
de un radiobutton. El valor predeterminado es un versin del predeterminado color
de primer plano.
fuente la fuente que se utiliza para acumulacin delcampo . Consulte la seccin 5.4
"Type" (p. 10).
fgorforeground El color utilizado para representar acumulacin delcampo .
altura el nmero de lneas (no pxeles) de texto en el radiobutton. Por defecto es 1.
highlightbackground El color de resaltado del foco cuando el radiobutton no tien
e el foco.
Vase la Seccin 53, "Focus: enrutamiento entrada de teclado" (p. 155).
highlightcolor El color de resaltado del foco cuando el radiobutton tiene el foc
o.
highlightthickness el grosor de la atencin. Por defecto es 1. Sethighlightthickness=0 para suprimir la presentacin de la atencin.
imagen que muestre una imagen grfica en vez de texto para este radiobutton, estab
lezca esta opcin en un objeto image. Consulte la Seccin 5.9 , "Imgenes" (p. 14). L
a imagen aparece cuando el radiobutton no est seleccionado; compareselectimage ,
a continuacin.
indicatoronNormally un radiobutton muestra su indicador. Si establece esta opcin
en cero, el indicador desaparece, y todo el widget se convierte en un "push-push
" que se ve cuando se borra y hundidos cuando se establece. Que
Nuevo Mxico Tech Computer Center Tkinter 8,5 69 referencia

pueden desear aumentar theborderwidth valor para que sea ms fcil ver el estado de
este tipo de controles.
justificar si acumulacin delcampo contiene varias lneas, esta opcin controla el mod
o en que el texto es jus- tiied:tk.CENTER (el valor por omisin), tk.IZQUIERDA , o
rtk.DERECHA .
offrelief si suprime el indicador por assertingindicatoron=False , elde- frelief
speciies la opcin estilo de que se mostrar cuando el radiobut- ton no est seleccio
nado. Los valores por defecto istk.LEVANTADA .
overreliefSpeciies el alivio que se muestra cuando el ratn se encuentra sobre la
radi- obutton.
padx Cmo mucho espacio para dejar a la izquierda y a la derecha del radiobutton y

texto.
Por defecto es 1.
pady cunto espacio para dejar por encima y por debajo de la radio y el texto. Por
defecto es 1. El
socorro de forma predeterminada, un radiobutton, havetk.PISO de socorro, de tal
manera que no destacan de su fondo. Vase la Seccin 5.6 , "Socorro estilos" (p. 12)
Para obtener ms 3-d effect opciones. Tambin puede userelief=tk.SLIDOS , que muestr
a un slido marco negro alrededor del radiobutton.
selectcolorThe color de los radiobutton cuando se establezca. Por defecto es roj
o.
selectimageIf est utilizando la imagen opcin para mostrar un grfico en lugar de tex
to cuando el radiobutton est desactivada, puede establecer theselectimage opcin pa
ra variar- una imagen que se mostrar cuando el radiobutton. Consulte la Seccin 5.9
, "Imgenes" (p. 14).
El valor predeterminado isstate=tk.NORMAL , pero puede setstate=tk.color gris CO
N DISCAPACIDAD para el control y que no responde. Si el cursor se encuentra en e
l radiobutton, el estado istk.ACTIVO .
takefocus De forma predeterminada, el foco de entrada (vase la Seccin 53, "Focus:
enrutamiento de teclado de" (p. 155) Se realizar a travs de una radio. Si settakef
ocus=0 , no se centrar visitar este radiobutton.
texto La etiqueta aparece junto a los radiobutton. Utilizar saltos ( ' \n' ) par
a mostrar varias lneas de texto.
textvariable Si tiene que cambiar la etiqueta de un radiobutton durante la ejecu
cin, crear aStringVar (vase la Seccin 52, "variables de Control: los valores que su
stentan los widgets" (p. 153) Para administrar el valor actual y establece el va
lor de esta opcin en la variable de control. Cada vez que la variable de control
cambia el valor de, la radi- obutton anotacin de cambiar automticamente a ese texto
.
subrayar con el valor predeterminado de -1, ninguno de los personajes del texto
de la etiqueta es crtica. Establezca esta opcin en el ndice de un personaje en el t
exto (a partir de cero) para subrayar el carcter.
valor cuando un radiobutton es activado por el usuario, su variable de control s
e establece en el currentvalue opcin. Si la variable de control es anIntVar , dar
a cada radiobutton en el grupo a diferentes dadas integervalue opcin. Si la vari
able de control es aStringVar , dar a cada radiobutton un opcin diferente stringv
alue.
variable variable del control radiobutton que comparte con los otros botones en
el grupo; vase la Seccin 52, "variables de Control: los valores que sustentan los
widgets" (p. 153). Esto puede ser anIntVar o aStringVar .
70 8.5 Referencia Tkinter Nuevo Mxico Tech Computer Center

anchura la anchura predeterminada de un radiobutton es determinado por el tamao d


e la imagen en pantalla o en el texto. Puede configurar esta opcin en una serie d
e caracteres (no pxeles) y el radiobutton, siempre tendr un espacio para que mucho
s caracteres.
wraplengthNormally, las lneas no estn envueltos. Puede establecer esta opcin en un
nmero de caracteres y en todas las lneas, se rompe en pedazos no ms de esa cantidad
.
Mtodos de objetos radiobutton son:
.cancelar() borra (vueltas) de la radio.
.Flash() parpadea el radiobutton un par de veces entre sus activos y colores nor
males, sino que deja el modo en que comenz.
.Invoke() puede llamar a este mtodo para obtener las mismas acciones que se produ
ce si el usuario hace clic en el radiobut- ton para cambiar su estado.
.Select() establece (activa) el radiobutton.
21. Widget TheScale
El objetivo de una escala widget es para permitir al usuario establecer someint

orfloat propsitos especi cos valor dentro de un rango. Aqu hay dos escala widgets,
uno horizontal y otro vertical:
Cada escala muestra un control deslizante, que el usuario puede arrastrar a lo l
argo de un canal para cambiar el valor. En el grfico, el irst control deslizante
se encuentra en -0,38 y el segundo a las 7.
Puede arrastrar el control deslizante para un nuevo valor con el botn 1 del ratn.
Si se hace clic en el botn 1 en el valle, la barra deslizante se mover un incremen
to en este sentido por clic.
Manteniendo pulsado el botn 1 en la batea, despus de un retardo, empezar a auto-re
petir su funcin.
Si la escala tiene el foco del teclado, flecha izquierda y flecha arriba las pul
saciones se mueva el control deslizante hacia arriba (para ver- tical escalas) o
izquierda (para las escalas horizontal). Flecha a la derecha y las teclas flec
ha hacia abajo, mueva el control deslizante hacia abajo o hacia la derecha.
Para crear una nueva escala widget como el nio de la ventana raz o bastidor namedp
arent :
w=tk.Escala( parent,option,...)
El constructor devuelve el newScale widget. Opciones:
New Mexico Tech Computer Center Tkinter 8,5 referencia 71

Tabla 30.Escala widget


activebackground opciones del color de la barra de desplazamiento cuando el mous
e se sita sobre l. Consulte la Seccin 5.3 , "Col- ors" (p. 10).
bgorbackground El color de fondo de las partes de la widget que estn fuera del ca
nal.
bdorborderwidth Anchura del 3-d borde alrededor de la canaleta y slider. Por def
ecto es de dos pxeles.
De los valores aceptables, consulte la Seccin 5.1 , "dimensiones" (p. 9),
mando un procedimiento que se llama cada vez que el control deslizante se mueve.
Este procedimiento se pasa un argumento, el nuevo valor de la escala. Si el con
trol deslizante se mueve con rapidez, es posible que no obtenga una devolucin de
llamada para cada posicin posible, pero sin duda que una devolucin de llamada cuan
do se posa.
cursor El cursor que aparece cuando el ratn est sobre la escala. Consulte la Seccin
5.8 , "Cursores" (p. 13),
dgitos la manera en la que el programa lee el valor actual se muestra en una esca
la widget es a travs de una variable de control; vase la Seccin 52, "variables de C
ontrol: los valores que sustentan los widgets" (p. 153). La variable de control
para una escala puede ser anIn- tVar , aDoubleVar (para typefloat ), o aStringV
ar . Si se trata de una variable de cadena, thedigits opcin controla el nmero de dg
itos que se utiliza cuando el valor de la escala numrica se convierte en una cade
na.
fuente la fuente usada para la etiqueta y anotaciones. Consulte la seccin 5.4 "Ty
pe" (p. 10).
fgorforeground El color del texto de la etiqueta y anotaciones.
from_ deines a flote valor que un extremo de la escala de rango. Para escalas ve
rticales, este es el extremo superior; para las escalas horizontal, el extremo i
zquierdo el subrayado (_) no es un error de tipeo: becausefrom es una palabra re
servada en Python, esta opcin est escrito from_ . El valor predeterminado es de 0,
0 . Ver thetooption, a continuacin, en el otro extremo de la gama.
highlightbackground El color de las focus resaltar cuando la escala no tiene el
foco. Vase la Seccin 53, "Focus: enrutamiento entrada de teclado" (p. 155).
highlightcolor El color de resaltado del foco cuando la magnitud tiene el foco.
highlightthickness El espesor de la atencin. Por defecto es 1. Sethighlightthickness=0 para suprimir la presentacin de la atencin.
etiqueta puede mostrar una etiqueta dentro de la escala de widget de esta opcin p
ara el texto de la etiqueta. La etiqueta aparece en la esquina superior izquierd

a si la escala es horizontal, o la esquina superior derecha si vertical. El valo


r predeterminado es sin etiqueta.
longitud La longitud de la escala widget. Esta es la dimensin x si la escala es h
ori- zontales, o la dimensin y si vertical. El valor predeterminado es 100 pxeles.
Para valores permitidos, consulte la Seccin 5.1 , "dimensiones" (p. 9).
orientar Setorient=tk.HORIZONTAL si desea que la escala para ejecutar a lo largo
de la x globaliza- cin ha reivindicado, ororient=tk.VERTICAL que funcione de man
era paralela al eje y. Por defecto es vertical.
alivio con el defaultrelief=tk.PLANA, la escala no destacan por sus antecedentes
. Usted tambin puede userelief=tk.SLIDA para obtener un color negro slido bastidor
alrededor de la escala, o a cualquiera de los dems tipos de relieve se describe e
n Seccin de 5,6 , "Socorro estilos" (p. 12).
72 8.5 Referencia Tkinter Nuevo Mxico Tech Computer Center

repeatdelayThis opcin botn controla la longitud 1 tiene que ser pulsada en el vall
e antes de la corredera comienza a moverse en esa direccin varias veces. Isre Por
Defecto- peatdelay=300 , y las unidades son milisegundos.
intervalo de repeticin Esta opcin controla la frecuencia con la que el gua salta 1
una vez que el botn se ha pulsado en la batea de leastrepeatdelay en milisegundos
. Por ejemplo, intervalo de repeticin=100 va a saltar el control deslizante cada
100 milisegundos.
resolutionNormally, el usuario slo ser capaz de cambiar la escala de unidades ente
ras. Establezca esta opcin en algn otro valor para cambiar el menor incremento de
la escala de valor. Por ejemplo, iffrom_=-1.0 ypara=1.0 , y usted setres dades=0
.5 , la escala, tiene 5 valores posibles: -1.0 , -0,5 , 0,0 , +0,5 , y +1,0 . To
dos los movimientos ms pequeos ser ignorado. Useresolution=-1 a dis- cualquier redo
ndeo de valores.
showvalue Normalmente, el valor actual de la escala se muestra en forma de texto
de la barra de desplazamiento (por encima de las escalas horizontal, a la izqui
erda a escalas verticales). Establecer esta opcin en 0 para eliminar esa etiquet
a.
sliderlength normalmente el control deslizante es de 30 pxeles a lo largo de la l
ongitud de la escala. Puede cambiar la longitud de thesliderlength opcin de la lo
ngitud deseada; vase la seccin 5.1 , "dimensiones" (p. 9).
sliderrelief De forma predeterminada, el control deslizante se muestra con atk.E
LEVADO estilo de socorro. Descarga de otros estilos, esta opcin para cualquiera d
e los valores que se describen en la Seccin 5.6 , "Socorro estilos" (p. 12) El
estado normalmente, la escala widgets responder a eventos del ratn y cuando se ti
ene el foco, tambin eventos de teclado. Setstate=tk.DESACTIVAR para hacer el widg
et no responde.
takefocus Normalmente, el enfoque se escala a travs de widgets. Establecer esta o
pcin a 0 si no desea este comportamiento. Vase la Seccin 53, "Focus: teclado de enr
utamiento de put" (p. 155).
tickinterval normalmente, no hay ningn "tics" se muestran a lo largo de la escala
. Peridico para mostrar los valores de la escala, establezca esta opcin en un nmero
y las garrapatas se mostrarn en mltiplos de dicho valor. Por ejemplo, iffrom_=0,0
,a=1.0 , andtickin- valo=0.25 , las etiquetas se mostrarn a lo largo de la escal
a de valores 0.0 , 0.25 , 0.50 , 0.75 y 1.00 . Estas etiquetas aparecen por deba
jo de la escala horizontal si, a su izquierda si vertical. Valor predeterminado
es 0, que suprime la presentacin de garrapatas y
de valor que deines a flote uno de los extremos de la escala de rango; el otro e
xtremo es deined thefrom_ por opcin, discutida anteriormente. Thetovalue puede se
r superior o inferior al valor thefrom_. Para escalas verticales, thetovalue dei
nes la parte inferior de la escala horizontal; para las escalas, el extremo dere
cho de valor por defecto es de 100.0 .
troughcolorThe color de la vaguada.
variable la variable de control para esta escala, si los hay; vase la Seccin 52, "

variables de Control:
los valores que sustentan los widgets" (p. 153). Variables de control pueden se
r de la clase IntVar ,DoubleVar (typefloat ), orStringVar . En este ltimo caso, e
l valor numrico se convertir en una cadena. Consulte la opcin thedigits, anteriorme
nte, para obtener ms informacin sobre esta conversin.
anchura La anchura de la canaleta parte del widget. Esta es la dimensin x de esca
las verticales y la dimensin y si la escala hasorient=tk.HORIZONT- AL. Valor pred
eterminado es 15 pxeles.
New Mexico Tech Computer Center Tkinter 8,5 referencia 73

Escala de objetos tienen estos mtodos:


.coords(value=None) devuelve las coordenadas, relativa a la esquina superior izq
uierda del widget, correspondiente a un determinado valor de la escala. Forvalue
=None, puede obtener las coordenadas del centro de la barra en su posicin actual.
Cuando el control deslizante Toind sera que si el valor de la escala se establec
e en algn cotax, usevalue=x.
.Get() Este mtodo devuelve el valor actual de la escala.
.Identificar( x,y) con un par de coordenadas (x,y) con respecto a la esquina sup
erior izquierda del widget, este mtodo devuelve una cadena que identifica qu parte
funcional del widget en esa ubicacin. El valor de retorno puede ser cualquiera d
e estos:
"slider" del control deslizante.
"Canal1" para las escalas horizontal, a la izquierda de la barra; de escalas ver
ticales, encima del control deslizante.
"Canal2" para las escalas horizontal, a la derecha de la barra de desplazamiento
; para escalas verticales, por debajo del control deslizante.
" Posicin(x,y)no est en ninguna de las piezas anteriores.
.Set(valor) Establece el valor de la escala.
22. Widget TheScrollbar
una serie de widgets, tales como cuadros y lienzos, puede actuar como ventanas d
eslizantes en un mayor espacio virtual. Puede conectar scrollbar widgets para pr
oporcionar al usuario una forma de deslizar la vista relativa a los contenidos.
A continuacin se muestra una captura de pantalla de un widget entrada asociada a
un scrollbar widget:
Las barras puede ser horizontal, como la de arriba, o en vertical. Un widget que
tiene dos dimensiones desplazable, como un lienzo o listbox, puede tener una ho
rizontal y una barra de desplazamiento vertical.
El control deslizante o ruedecilla, es la de rectngulo que muestra la actual posi
cin de desplazamiento.
Las dos puntas triangulares en cada extremo se utilizan para mover la posicin de
los pequeos pasos. La de la izquierda o en la parte superior se calledarrow1 , y
el de la derecha o en la parte inferior se calledarrow2 .
La depresin est hundido-zona visible detrs de las puntas y slider. La depresin est di
vidido en dos zonas namedtrough1 (por encima o a la izquierda de la barra de des
plazamiento), andtrough2 (debajo o a la derecha de la barra de desplazamiento).
El control deslizante del tamao y la posicin, en relacin con la longitud de todo el
widget, muestran el tamao y posicin de la vista respecto a su tamao total. Por eje
mplo, si una barra de desplazamiento vertical est asociado a un cuadro de lista,
y su control deslizante se extiende desde el 50% al 75% de la altura de la barra
de desplazamiento, lo que significa que la parte visible del control listbox mu
estra que parte de la lista general a partir de la mitad y poner fin a las tres
y cuarto.
En una barra de desplazamiento horizontal, al hacer clic en B1 (botn 1) en el ext
remo izquierdo de la flecha se mueve la vista por una pequea cantidad a la izquie
rda. Haga clic en B1 en el extremo derecho de la flecha se mueve la vista por la
cantidad de la derecha.
Para una barra de desplazamiento vertical hacia arriba, haciendo clic en el y la

s puntas hacia abajo mueve la vista


Tkinter 8,5 referencia 74 Nuevo Mxico Tech Computer Center

pequeas cantidades hacia arriba o hacia abajo. Consulte a la discusin de los widge
t de ind de la cantidad exacta que estas acciones mover la vista.
El usuario puede arrastrar el control deslizante con B1 o B2 (el botn central) pa
ra mover la vista.
En el caso de una barra de desplazamiento horizontal, al hacer clic en B1 en la
batea a la izquierda del control deslizante se desplaza el punto de vista de una
pgina, y haciendo clic en B1 en el valle de la derecha de la barra de desplazami
ento mueve el ver una pgina a la derecha. Para una barra de desplazamiento vertic
al, las acciones que le corresponda mover la vista una pgina hacia arriba o hacia
abajo.
Al hacer clic en B2 en algn punto a lo largo de la canaleta se mueve el control d
eslizante hasta que el extremo izquierdo o superior est en el ratn, o lo ms cerca p
osible a la misma.
Normalizar la posicin de la barra de desplazamiento se refiere a un nmero cerrado
en el intervalo [0.0 , 1.0 ] que deines la posicin del control deslizante. De des
plazamiento vertical, posicin 0.0 est en la parte superior y 1.0 en la parte infer
ior; de desplazamiento horizontal, posicin 0.0 en el extremo de la izquierda y 1,
0 a la derecha.
Para crear un widget newScrollbar como el nio de la ventana raz o frameparent :
w=tk.scrollbar( parent,option,...)
El constructor devuelve el newScrollbar widget. Las opciones de las barras son:
Cuadro 31.scrollbar
activebackground widget opciones del color de la barra de desplazamiento y las p
untas cuando el ratn est sobre ellos. Consulte la Seccin 5.3 , "Colores" (p. 10).
activerelief De forma predeterminada, el control deslizante se muestra con thetk
.PLANTEADO estilo de socorro. Para mostrar el control deslizante con un estilo d
iferente de socorro cuando el ratn est sobre el control deslizante.
bgorbackground El color de la barra de desplazamiento y las puntas cuando el mou
se no est sobre ellos.
bdorborderwidth el ancho de la 3-d las fronteras en todo el permetro de la canale
ta, y tambin el ancho de la 3-d en las puntas y slider. Por defecto es sin borde
alrededor de la tolva y de dos pxeles borde alrededor de la puntas y slider. Para
ver los valores posibles, consulte la Seccin 5.1 , "dimensiones" (p. 9),
mando un procedimiento que se llama siempre que se mueve la barra de desplazamie
nto. Para un anlisis de la secuencia de llamada, consulte la seccin 22.1 , "TheScr
ollbarcommand de devolucin de llamada" (p. 77).
cursor El cursor que aparece cuando el ratn se encuentra sobre la barra de despla
zamiento. Consulte la Seccin 5.8 , "Cursores" (p. 13).
elementborderwidth el ancho de los bordes alrededor de las puntas de flechas y c
ontrol deslizante. El valor predeterminado es elementborderwidth=-1 , lo que sig
nifica que se utilice el valor de fronteras adentro- opcin ancho.
highlightbackground El color de la resaltar cuando la barra de desplazamiento no
tiene el foco. Vase la Seccin 53, "Focus: enrutamiento entrada de teclado" (p. 15
5).
highlightcolor El color de las focus resaltar cuando la barra de desplazamiento
tiene el foco.
highlightthickness el grosor de la atencin. Por defecto es 1. A0para suprimir la
presentacin de la atencin.
saltar Esta opcin controla lo que sucede cuando un usuario arrastra el control de
slizante. Normalmente (salto=0 ), cada uno de los pequeos arrastre el regulador d
e causas de devolucin el comando que se va a llamar. Si se establece esta opcin ha
sta 1, la devolucin no se llama hasta que el usuario suelta el botn del mouse.
oriente Setorient=tk.HORIZONTAL para una barra de desplazamiento horizontal, ori
ent=tk.VER- TICAL de vertical (la orientacin predeterminada).

New Mexico Tech Computer Center Tkinter 8,5 referencia 75

socorro socorro controla el estilo del widget, el estilo predeterminado istk.hun


didos . Esta opcin no tiene efecto en Windows.
repeatdelayThis opcin botn controla cunto tiempo 1 tiene que ser pulsada en la cuba
antes de la corredera comienza a moverse en esa direccin varias veces. Isre Por
Defecto- peatdelay=300 , y las unidades son milisegundos.
intervalo de repeticin Esta opcin controla el movimiento deslizante con frecuencia
se repiten al botn 1 se celebr en la batea. Por defecto isrepeatinterval=100 , y
las unidades son milisegundos.
takefocus Normalmente, puede cambiar el foco a travs de un desplazamiento widget;
vase la Seccin 53, "Focus: enrutamiento entrada de teclado" (p. 155). Settakefoc
us=0 si no desea este comportamiento. Las asociaciones de teclas predeterminadas
para las barras permite al usuario utilizar the and teclas de flecha para mover l
as barras horizontales, y pueden utilizar las teclas the and las barras de desplaz
amiento vertical.
troughcolorThe color de la vaguada.
Width de la barra de desplazamiento (su dimensin y si es horizontal, y su dimensin
x si vertical). Por defecto es 16. Para ver los valores posibles, consulte la
Seccin 5.1 , "dimensiones" (p. 9).
Mtodos de objetos scrollbar incluyen:
.activar(elemento=None) Si no se proporciona ningn argumento, este mtodo devuelve
una de las cadenas "flecha1' , 'flecha2 ' , 'slider' , o", en funcin de si el ratn
. Por ejemplo, el mtodo devuelve "slider" si el ratn est en el control deslizante.
Se devolver la cadena vaca si el ratn no est actualmente en cualquiera de estos tres
controles.
Para resaltar uno de los controles (mediante descarga itsactiverelief itsactiveb
ackground estilo y color), llama a este mtodo y pasar una cadena que identifica e
l control que desea resaltar, uno de'ar- row1' , 'flecha2 ", o "slider".
.Delta(dx,dy) con un movimiento de ratn de(dx,dy)en pxeles, este mtodo devuelve the
float valor que se debe agregar a la posicin actual del control deslizante para l
ograr el mismo movimiento. El valor debe estar en el intervalo cerrado [ -1.0 ,
1.0 ].
.Fraccin( x,y) en una ubicacin de pxel(x,y), este mtodo devuelve la posicin de la bar
ra correspondiente normalizado en el intervalo [0.0 , 1.0 ], que es la ms cercana
a la ubicacin.
.Get() devuelve dos nmeros (a,b), en el que se describe la situacin actual del con
trol deslizante. Theavalue da a la pos- de la izquierda o en la parte superior d
e la barra de desplazamiento, de barras de desplazamiento horizontales y vertica
les, respectivamente; b valor da la posicin del borde derecho o inferior. Cada va
lor est en el intervalo [0.0 , 1.0 ] donde 0.0 es la izquierda o en la posicin sup
erior y 1.0 es el de la derecha o inferior. Por ejemplo, si el control deslizant
e se extiende desde mitad de tres cuartas partes de la forma a lo largo de la ca
naleta, puede volver la tupla (0.5,0 .75).
.Identificar( x,y) Este mtodo devuelve una cadena que indica que (si los hay) de
los componentes de la barra de desplazamiento en el(x,y)las coordenadas. El valo
r de retorno es uno de la "flecha1 ' , 'a travs1 ' , 'slider', 'a travs2 ' , 'flec
ha2 ", o la cadena vaca"si la ubicacin no est en ninguna de la barra de desplazamie
nto com- ponentes.
76 8.5 Referencia Tkinter Nuevo Mxico Tech Computer Center

.set(en primer lugar,el ltimo) para conectar un desplazamiento a otro widgetw, se


tw'sxscrollcommand oryscrollcommand hasta la barra de desplazamiento's .mtodo set
. Los argumentos tienen el mismo significado que los valores devueltos por la .g

et() mtodo. Por favor, tenga en cuenta que la barra de desplazamiento no se mueve
el widget correspondiente.
22.1 . TheScrollbarcommand llamada
cuando el usuario manipula un scrollbar, el scrollbar itscommand llamadas callba
ck. Los argumentos de esta llamada depende de lo que haga el usuario:
Cuando el usuario solicita un movimiento de una "unidad" a la izquierda o hacia
arriba, por ejemplo, haciendo clic en el botn B1 a la izquierda o en la parte sup
erior flecha, los argumentos de la devolucin:
comando(tk.SCROLL, -1,tk.LAS UNIDADES)
Cuando el usuario solicita un movimiento de una unidad derecha o abajo, los argu
mentos son:
comando(tk.SCROLL, 1,tk.LAS UNIDADES)
Cuando el usuario solicita un movimiento de una pgina izquierda o arriba:
comando(tk.SCROLL, -1,tk.PGINAS)
Cuando el usuario solicita un movimiento de una pgina derecha o abajo:
comando(tk.SCROLL, 1,tk.PGINAS)
Cuando el usuario arrastra el control deslizante a un valuefin el intervalo [0,1
], donde 0 significa todo a la izquierda o hacia arriba y 1 significa todos los
Derecha o hacia abajo, la llamada es la siguiente:
comando(tk.MOVETO, f)
Estas secuencias de llamada coincide con los argumentos esperados por el.xview()
y.yview() mtodos de lienzos, cuadros de lista, widgets de texto. El widget no ti
ene.xview(). Consulte la Seccin 10.1 , "desplazando un widget" (p. 45).
22.2 . Conexin aScrollbar a otro widget
aqu es un fragmento de cdigo que muestra la creacin de un lienzo con barras de desp
lazamiento horizontales y verticales. En este fragmento, se supone que es un cua
dro widget.
self.canv=tk.Canvas(self, width=600, height=400, scrollregion= (0, 0,1200,800 ))
self.canv.grid(fila=0, columna= 0)
self.scrollY = tk.scrollbar(self, orient=tk.VERTICAL, mando=self.canv.yview) sel
f.scrollY.grid(fila=0, columna=1,sticky=tk.N+ct.S)
self.scrollX = tk.scrollbar(self, orient=tk.HORIZONTAL, command=self.canv.xview)
self.scrollX.grid(fila=1, columna=0,sticky=tk.E+tk.W)
Nuevo Mxico Tech Computer Center Tkinter 8,5 referencia 77

self.canv[ 'xscrollcommand'] = self.scrollX.set self.canv[ 'yscrollcommand'] = s


elf.scrollY.set
Notas:
La conexin va ambas formas. El lienzo'sxscrollcommand opcin tiene que estar conect
ado a la barra de desplazamiento horizontal's .mtodo set, y la barra de desplazam
iento'scommand opcin tiene que ser conectado a la lona's .xview mtodo. La barra de
desplazamiento vertical y tela debe tener la misma conexin mutua.
Thesticky opciones sobre la rejilla() llamadas a mtodos de fuerza a las barras pa
ra estirar lo suficiente toit la dimensin correspondiente de la lona.
23. TheSpinbox
TheSpinbox widget widget permite al usuario seleccionar los valores de un conjun
to dado. Los valores pueden ser una serie de nmeros, o aixed conjunto de cadenas.
En la pantalla, aSpinbox tiene un rea para mostrar los valores actuales, y un par
de puntas de flecha.
El usuario puede hacer clic en la flecha apunta hacia arriba para elevar el valo
r al valor ms alto siguiente en la secuencia. Si el valor ya es al mximo, puede co
nfigurar el widget, si lo desea, de forma que el nuevo valor se puede envolver e
n el valor ms bajo.
El usuario puede hacer clic en la flecha hacia abajo para avanzar en el valor pa
ra el valor ms bajo siguiente en la secuencia. Esta flecha tambin puede ser conigu
red para envolver, de manera que, si el valor actual es el ms bajo, haciendo clic
en la flecha hacia abajo se mostrar el valor ms elevado.

El usuario tambin puede introducir los valores directamente, tratar el widget com
o si fuera un . El usuario puede mover el enfoque a la widget (vea la Seccin 53,
"Focus: enrutamiento entrada de teclado" (p. 155), o bien haciendo clic en el mi
smo, o usando la tecla tab o mays+tab y, a continuacin, edite el valor mostrado.
Para crear un widget newSpinbox como el nio de la ventana raz o frameparent :
w=tk.incrementadora( parent,option,...)
El constructor devuelve el newSpinbox widget. Las opciones incluyen:
Cuadro 32.Cuadro opciones widget
activebackground color de fondo cuando el cursor est sobre el widget; vase la secc
in 5.3 , "Colores" (p. 10).
bgorbackground color de fondo del widget.
bdorborderwidth Ancho del borde alrededor del widget; vase la seccin 5.1 , "dimens
iones" (p. 9). El valor predeterminado es un pixel.
buttonbackground El color de fondo en las puntas. El valor predeterminado es gri
s.
78 8.5 Referencia Tkinter Nuevo Mxico Tech Computer Center

buttoncursor El cursor que se mostrar cuando el ratn est sobre las puntas; vase la s
eccin 5.8 , "Cursores" (p. 13).
buttondownrelief El alivio para el estilo hacia abajo flecha; vase la seccin 5.6 ,
"Socorro estilos" (p. 12). El estilo predeterminado istk.PLANTEADAS".
buttonup El alivio estilo de la flecha apunta hacia arriba; vase la seccin 5.6 , "
Socorro estilos" (p. 12). El estilo predeterminado istk.PLANTEADAS".
comando Utilice esta opcin para especificar una funcin o mtodo que se llama cuando
el usuario hace clic en una de las puntas de flecha. Tenga en cuenta que la devo
lucin de llamada no se llama cuando el usuario modifica el valor directamente com
o si fuera un .
cursor selecciona el cursor que aparece cuando el ratn se encuentra sobre la entr
ada parte del widget; vase la seccin 5.8 , "Cursores" (p. 13).
disabledbackground estas opciones, seleccione los colores de fondo y primer plan
o aparece cuando disabledforeground el widget'sstate istk.DISABLED .
exportselection Normalmente, el texto de la entrada parte de aSpinbox se puede c
ortar y pegar.
Para prohibir este comportamiento, establezca theexportselection opcin toTrue .
font Utilice esta opcin para seleccionar una letra diferente para el texto de ent
rada; vase la seccin 5.4 , "Type" (p. 10).
fgorforeground Esta opcin selecciona el color utilizado para mostrar el texto en
la entrada parte del widget, y el color de las puntas de flecha.
formato utilice esta opcin para controlar el formato de los valores numricos en co
mbinacin con thefrom_ andtooptions. Por ejemplo, format= ' % 10.4f", que muestra
el valor que a los diez characterield, con cuatro dgitos despus de la coma decimal
.
from_ Utilice esta opcin en combinacin con thetooption (descrito a continuacin) par
a limitar los valores en un intervalo numrico. Por ejemplo,from_=1 y a=9, slo se p
ermiten los valores entre 1 y 9 inclusive. Vase tambin theincrement opcin que apare
ce a continuacin.
highlightbackground El color del foco theSpinbox resaltar cuando no tiene el foc
o.
Vase la Seccin 53, "Focus: enrutamiento entrada de teclado" (p. 155).
highlightcolor El color de la enfoque theSpinbox resaltar cuando tiene el foco.
highlightthickness El espesor de la atencin. Por defecto es 1. A0para suprimir la
presentacin de los resalte.
aumenta cuando se limitan los valores con thefrom_ andtooptions, puede utilizar
theincrement opcin para especificar cunto valor aumenta o de las arrugas cuando el
usuario hace clic en una flecha. Por ejemplo, con las opciones from_=0,0 ,a=2.0
, andincrement=0.5 , la flecha se paso a travs de valores 0.0 , 0.5 , 1.0 , 1.5
y 2.0 .

insertbackground Selecciona el color de la insercin cursor que aparece en la entr


ada del widget.
insertborderwidth Esta opcin controla el ancho del borde alrededor del cursor ins
ercin.
Normalmente, la insercin cursor tendr ningn borde. Si esta opcin est establecida en u
n valor distinto de cero, la insercin cursor se mostrarn en thetk.ELEVADO estilo a
livio.
insertofftime estas dos opciones de control de ciclo el parpadeo del cursor inse
rcin insertontime: la cantidad de tiempo que se gasta y en, respectivamente, en m
ilisegundos. Por ejemplo, con optionsinsertofftime=200 andinsertontime=400 , el
cursor parpadear de 0,2 segundos y, a continuacin, en 0.4 segundos.
New Mexico Tech Computer Center Tkinter 8,5 referencia 79

insertwidthUse esta opcin para especificar el ancho de la insercin cursor; de valo


res posibles, consulte la Seccin 5.1 , "dimensiones" (p. 9). El ancho predetermi
nado es de dos pxeles.
justificar Esta opcin controla la posicin del texto en la entrada del widget.
Los valores pueden betk.IZQUIERDA a la izquierda de justificar el texto;tk.en el
centro, o a la derecha para justificar el texto.
consulte la Seccin 5.3 , "Colores" (p. 10). ; Readonlybackground Esta opcin speci
ies el color de fondo que se mostrar cuando el widget'sstate es "readonly"
socorro Utilice esta opcin para seleccionar un estilo de socorro para el widget;
vase la seccin 5.6 , "Socorro estilos" (p. 12). El estilo predeterminado istk.hun
didos .
repeatdelayThese opciones especifican el comportamiento de repeticin de hacer cli
c con el mouse en la ar- rowheads intervalo de repeticin; los valores son en mili
segundos. Valor Therepeatdelay speciies cunto tiempo el botn del ratn debe ser cele
brada antes de que se repite, andre- peatinterval speciies cmo a menudo la funcin
se repite. Los valores predeterminados son 400 y 100 milisegundos, respectivamen
te.
selectbackground El color de fondo que se va a usar mostrar elementos selecciona
dos.
selectborderwidth el ancho del borde alrededor de los elementos seleccionados.
selectforeground El color de primer plano para utilizar mostrar los elementos se
leccionados.
Normalmente, aSpinbox widget se crea en thetk.estado NORMAL. Establecer esta opc
in totk.DESACTIVAR para hacer el widget no responde a las acciones del ratn o del
teclado. Si se establece en "readonly" , el valor de la entrada parte del widget
se puede modiied con las pulsaciones de teclas, pero el valor se pueden copiar
en el portapapeles y el widget todava responde a los clics sobre las puntas.
takefocus por lo general, la entrada de aSpinbox widget puede tener foco (vase se
c- 53, "Focus: enrutamiento entrada de teclado" (p. 155)). Para quitar el widge
t de la secuencia enfoque transversal, settakefocus=False .
textvariable si desea recuperar el valor actual del widget, puede utilizar el .mt
odo get(), a continuacin, o se puede asociar un control variable con el widget de
paso que como variable de control el valor de esta opcin. Vase Sec- 52, "variable
s de Control: los valores que sustentan los widgets" (p. 153).
a esta opcin speciies el lmite superior de un rango de valores. Ver thefrom_ opcin,
anteriormente, y tambin theincrement opcin.
los valores hay dos formas de especificar los valores posibles del widget. Una f
orma de hacerlo es proporcionar una tupla de cadenas como el valor de opcin theva
lues. Por ejemplo, valores= ( 'rojo', 'azul' , 'verde') permitira que slo las tres
cadenas como valores. A conigure el widget para aceptar un rango de valores numr
icos, vea thefrom_ opcin anterior.
ancho Utilice esta opcin para especificar el nmero de caracteres permitidos en la
entrada del widget. El valor predeterminado es 20.
envoltura Normalmente, cuando el widget est en su valor ms alto, la flecha no hace

nada, y cuando el widget est en su valor ms bajo, el de punta no hace nada. Si se


lectwrap=True , la flecha avanzar desde el valor ms alto a la ms baja, y la flecha
avanzar desde el valor ms bajo al ms alto.
80 8.5 Referencia Tkinter Nuevo Mxico Tech Computer Center

xscrollcommand Utilice esta opcin para conectar una barra de desplazamiento a la


entrada parte del widget. Para obtener ms informacin, consulte la seccin 22.2 , "Co
nexin aScrollbar a otro-" (p. 77).
Estos mtodos estn disponibles onSpinbox widgets:
.bbox(index) Este mtodo devuelve el rectngulo de seleccin del carcter en la entrada
positionindex en parte del widget. El resultado es una tupla(x,y,w,h), donde los
valores son thexandycoordinates de la esquina superior izquierda, y el carcter d
e la anchura y la altura en pxeles, en ese orden.
.Delete(nombre, apellido=None) Este mtodo elimina los caracteres de la entrada de
theSpinbox . Los valores offirst andlast se interpretan de la forma estndar de P
ython cortes.
.Get() Este mtodo devuelve el valor de theSpinbox . El valor siempre se devuelve
como una cadena, incluso si el widget est configurado para contener un nmero.
.Icursor( index) este mtodo se utiliza para posicionar el cursor en la insercin ub
icacin byindex propsitos especi cos , utilizando la convencin estndar de Python para
las posiciones.
.Identificar( x,y) le da una posicin(x,y)en el widget, este mtodo devuelve una cad
ena que describe lo que est en ese lugar. Los valores pueden ser cualquiera de lo
s siguientes:
'entrada' para el rea de entrada.
'Buttonup' para el apunta hacia arriba flecha.
'Un' para el apuntando hacia abajo flecha.
" (una cadena vaca), si estas coordenadas no estn dentro del widget.
.Index(i) Este mtodo devuelve la posicin numrica de un ndicei. Los argumentos pueden
ser cualquiera de los siguientes:
tk.EXTREMO para obtener la posicin despus del ltimo carcter de la entrada.
Los conocimientos tradicionales.INSERT para obtener la posicin de insercin del curs
or.
Tk.ANCLAJE para obtener la posicin de la seleccin ancla.
Los conocimientos tradicionales.SEL_FIRST" para conseguir la posicin del inicio de
la seleccin. Si la seleccin no est dentro del widget, este mtodo plantea atk.TclErr
or excepcin.
Los conocimientos tradicionales.SEL_LAST para obtener la posicin justo despus de la
final de la seleccin. Si la seleccin no est dentro del widget, este mtodo plantea a
tk.TclError excepcin.
Una cadena de la forma " @x" indica anx-coordinar, dentro del widget. El valor d
e retorno es la po- sicin monetaria de carcter que la que coordinan. Si la coorden
ada es totalmente fuera del widget, el valor devuelto ser la posicin del carcter ms
cercano a esa posicin.
.Insert(index,texto) Este mtodo inserta caracteres del stringtext propsitos especi
cos en la posicin byindex . De los posibles valores de ndice, ver el ndice() mtodo a
nterior.
.Invoke(elemento) Llamar a este mtodo para obtener el mismo efecto que el usuario
hace clic en una punta de flecha. Theelement argumento es'buttonup" de la flech
a, y de una presin prolongada" de la flecha.
.Scan_dragto( x) Este mtodo funciona de la misma forma que el.scan_dragto() mtodo
que se describe en la Seccin 10, "el widget" (p. 41).
New Mexico Tech Computer Center Tkinter 8,5 referencia 81

.scan_mark( x) Este mtodo funciona de la misma forma que el.scan_mark() mtodo que
se describe en la Seccin 10, "el widget" (p. 41).
.Seleccin( 'a', index) Establece la seleccin ancla en el widget a la posicin propsit
os especi cos por el ndice . Para los posibles valores ofindex , consulte la.index
() del mtodo anterior. El valor inicial de la seleccin ancla es 0.
.Seleccin( 'a', index) Selecciona el texto que se encuentra entre la seleccin y el
ancla givenindex .
.Seleccin( "intervalo", inicio, fin) Seleccione el texto entre elinicio elevado y
los ndices. Para valores del ndice permitido, consulte la.index() mtodo anterior.
.Selection_clear() borra la seleccin.
.Selection_get() devuelve el texto seleccionado. Si existe en la actualidad ning
una seleccin, este mtodo provocar atk.TclError excepcin.
24. Acumulacin delcampo widget
widgets de texto son un mtodo mucho ms generalizada para manejo de varias lneas de
texto de theLabel widget. Widgets de texto son bastante ms que un completo editor
de texto en una ventana:
Usted puede mezclar texto con diferentes fuentes, colores, y los fondos.
Puede intercalar las imgenes incrustadas en el texto. La imagen es tratada como u
n solo carcter. Vase sec- cin 24,3 , "widget de texto imgenes" (p. 86).
Un ndice es una forma de describir un speciic posicin entre dos personajes de un w
idget de texto. Vase sec- cin 24,1 , "widget de texto ndices" (p. 84).
Un widget de texto pueden contener invisible marcar objetos entre posiciones de
caracteres. Consulte la Seccin 24.2 , "widget de texto" (p. 86).
Widgets de texto le permiten deine nombres para las regiones del texto llamado e
tiquetas. Puede cambiar el obis- po de un etiquetado regin, cambiar la fuente, lo
s colores de primer plano y de fondo, y otra opcin. Consulte la Seccin 24.5 , "wid
get de texto etiquetas" (p. 87).
Puede enlazar eventos a la regin. Consulte la Seccin 54, "Eventos" (p. 157).
Tambin puede incrustar un widget de texto en una "ventana" que contiene cualquier
Tkinter widget, incluso un marco widget con otros widgets. Una ventana tambin es
tratada como un solo carcter. Consulte la Seccin 24.4 , "widget de texto windows"
(p. 87).
Para crear un widget de texto como el nio de la ventana raz o bastidor namedparent
:
w=tk.Text(parent,option,...)
El constructor devuelve el newText widget. Las opciones son las siguientes:
Cuadro 33.widget de texto opciones
autoseparators Si theundo opcin est establecida, theautoseparators opcin controla s
i los separadores se agrega automticamente a la pila de deshacer despus de cada in
sercin o supresin (ifautoseparators=True) o no (ifautoseparat de
Tkinter 8,5 referencia 82 Nuevo Mxico Tech Computer Center

ors=False ). Para obtener una visin general de los mecanismo de deshacer, consul
te la seccin 24.7 , "acumulacin delcampo widget undo/redo pila" (p. 88).
bgorbackground El color de fondo predeterminado del widget de texto. Consulte la
Seccin 5.3 , "Col- ors" (p. 10).
bdorborderwidth el ancho del borde alrededor del widget de texto; vase la seccin 5
.1 , "dimensiones" (p. 9). El valor predeterminado es de dos pxeles.
cursor El cursor que aparece cuando el ratn est sobre el widget de texto. Consulte
la Seccin 5.8 , "Cursores" (p. 13),
exportselection normalmente, texto seleccionado dentro de un widget de texto se
exporta a la seleccin en el gestor de ventanas. Setexportselection=0 si no desea
ese comportamiento.
fuente fuente predeterminada para el texto que se inserta en el widget. Tenga en
cuenta que puede haber varias fuentes en los widgets mediante etiquetas para ca
mbiar las propiedades de texto. Consulte la seccin 5.4 "Type" (p. 10).
fgorforeground El color utilizado para el texto (y mapas de bits) en el widget.

Puede cambiar el color de las regiones seleccionadas; esta opcin es slo el valor p
or defecto.
altura del widget de las lneas (no pxeles!), medido de acuerdo a la funcin currentf
ont tamao.
highlightbackground El color de la atencin resaltar cuando el widget de texto no
tiene el foco.
Vase la Seccin 53, "Focus: enrutamiento entrada de teclado" (p. 155).
highlightcolor El color de el objetivo resaltar cuando el widget de texto tiene
el foco.
highlightthickness El espesor de la atencin. Por defecto es 1. Sethighlightthickness=0 para suprimir la presentacin de los resalte.
insertbackground El color de la insercin cursor. Por defecto es negro.
insertborderwidth Tamao del 3-D borde alrededor de la insercin cursor. Valor prede
terminado es0.
insertofftime El nmero de milisegundos la insercin del cursor parpadeando durante
su ciclo.
Establezca esta opcin en cero para reprimir parpadeando. Por defecto es 300.
insertontime El nmero de milsimas de segundo que el cursor se encuentra en insercin
durante el parpadeo.
Por defecto es 600.
insertwidthWidth cursor de la insercin (su altura es determinado por el punto ms a
lto en su lnea). El valor por defecto es 2 pxeles.
maxundo Esta opcin establece el nmero mximo de operaciones en la pila de deshacer.
Para obtener una visin general de los mecanismo de deshacer, vase la seccin 24,7 ,
"acumulacin delcampo widget undo/redo pila" (p. 88). Establezca esta opcin en -1
para especificar un nmero ilimitado de entradas en la pila de deshacer.
padx El tamao del relleno interno aadido a la izquierda y a la derecha del rea de t
exto.
Por defecto es un pixel. Para ver los valores posibles, consulte la Seccin 5.1 ,
"dimensiones" (p. 9).
pady El tamao del relleno interno aadido por encima y por debajo del rea de texto.
Por defecto es un pxel.
para otros valores, vase la seccin 5.6 , "Socorro estilos" (p. 12). ; El 3-D apar
icin del widget de texto. Por defecto isrelief=tk.
selectbackground HUNDIDO El color de fondo que se va a usar mostrar texto selecc
ionado.
selectborderwidth el ancho del borde alrededor para utilizar texto seleccionado.
selectforeground El color de primer plano para utilizar mostrar texto selecciona
do.
New Mexico Tech Computer Center Tkinter 83

espaciado 8,5 referencia1 Esta opcin speciies cunto dinero extra espacio vertical
se coloca encima de cada lnea de texto. Si una lnea se envuelve, este espacio se aa
de slo theirst lnea antes que ocupa en la pantalla. Valor predeterminado es0.
espacio2 Esta opcin speciies cunto dinero extra para agregar espacio vertical entr
e- lneas de texto cuando una lnea lgica vueltas. Valor predeterminado es0.
espacio3 Esta opcin speciies cunto dinero extra espacio vertical se aade debajo de
cada lnea de texto. Si una lnea se envuelve, este espacio se aade slo despus de la lti
ma lnea que oc- cupies en la pantalla. Valor predeterminado es0.
Normalmente, los widgets de texto responder a eventos de teclado y mouse (ratn) y
estado=tk.NORMAL para obtener este comportamiento. Si setstate=tk.DESACTIVADO ,
el widget de texto no responde, y no ser capaz de modificar su con- tiendas medi
ante programacin.
fichas Esta opcin controla cmo colocar texto caracteres de tabulacin. Consulte la S
eccin 24.6, "Configuracin de fichas aText widget" (p. 87).
takefocus Normalmente, se visita un widget de texto (vase la Seccin 53, "Focus: en
rutamiento entrada de teclado" (p. 155)). Settakefocus=0 si no quiere centrarse

en el widget.
deshacer esta opcin toTrue para permitir que el mecanismo de deshacer, ofalse par
a desactivarlo. Vase la seccin 24,7 , "acumulacin delcampo widget undo/redo pila" (
p. 88).
width el ancho del widget de caracteres (no pxeles!), medido de acuerdo con el ta
mao de fuente actual.
envolver Esta opcin controla la visualizacin de las lneas que son demasiado amplios
.
Con el comportamiento por defecto,envolver=tk.CHAR , cualquier lnea que se alarga
demasiado, se rompe en cualquier carcter.
Setwrap=tk.WORD y se va a romper la lnea despus de la ltima palabra que ella.
Si desea ser capaz de crear lneas que son demasiado largo toit en la ventana, set
wrap=tk.NINGUNO y proporcionar una barra de desplazamiento horizontal.
xscrollcommand para hacer el widget de texto desplazable horizontalmente, establ
ezca esta opcin en el mtodo set de la barra de desplazamiento horizontal.
yscrollcommand para hacer el widget de texto desplazable verticalmente, establez
ca esta opcin en el mtodo set de la barra de desplazamiento vertical.
24.1 .Widget de texto ndices
Un ndice es un mtodo general de especificar una posicin en el contenido de un widge
t de texto. Un ndice es una cadena con una de estas formas:
'lnea.columna' la posicin justo antes de la givencolumn (contando desde cero) en e
l givenline (contando de uno). Ejemplos: "1.0 " es la posicin de principios del
texto; "2.3 " es la posicin ante el cuarto carcter de la segunda lnea.
"Lnea.end' la posicin justo antes de la nueva lnea al final de la lnea (contando de
uno). As, por ejemplo, ndice 10.final" es la posicin al final de la dcima lnea.
84 8.5 Referencia Tkinter Nuevo Mxico Tech Computer Center

tk.Inserte la posicin del cursor insercin en el widget de texto. Esta constante es


igual a la cadena "insert".
tk.La posicin actual del personaje ms cercano a el puntero del ratn. Esta constante
es igual a la cadena "actual" .
tk.FINAL La posicin despus del ltimo carcter del texto. Esta constante es igual a la
cadena "final".
tk.SEL_FIRST si parte del texto en el widget est actualmente seleccionado (como a
rrastrando el ratn sobre ella), esta es la posicin antes del comienzo de la selecc
in. Si intenta usar este ndice y no hay nada seleccionado, un tk.TclError excepcin
sern levantados. Esta constante es igual a la cadena "sel.en primer lugar".
tk.SEL_LAST La posicin despus de la final de la seleccin, en su caso. Como withSEL_
FIRST , obtendr atk.TclError excepcin si se utiliza un ndice de ese tipo y no hay u
na seleccin. Esta constante es igual a la cadena "sel.ltima".
"Markname", puede utilizar una marca como un ndice; slo tiene que pasar su nombre
en un ndice. Consulte la Seccin 24.2 , "widget de texto" (p. 86).
vase la seccin 24,5 , "widget de texto etiquetas" (p. 87). ; "Etiqueta.en primer
lugar la posicin theirst carcter antes de la regin marcados con etiqueta
"etiqueta.ltima' la posicin despus del ltimo carcter de la regin.
' @X,y" la posicin antes del carcter ms cercano a las coordenadas (x,y).
embedded-objeto Si tiene una imagen o una ventana incrustada en el widget de tex
to, puede usar thePhotoImage , BitmapImage , o widget incrustado como un ndice. C
onsulte la Seccin 24.3 , "widget de texto imgenes" (p. 86), y la Seccin 24.4 , "wid
get de texto windows" (p. 87).
Adems de las opciones anteriores ndice bsico, usted puede crear expresiones complej
as arbitrarias por adicin de cualquiera de estos suixes a un ndice bsico o expresin
de ndice:
+nchars de un determinado ndice, mueva forwardncharacters. Esta operacin la lnea lmi
tes.
Por ejemplo, supongamos que theirst lnea tiene este aspecto:
abcdef

la expresin del ndice "1.0 +5 caracteres " se refiere a la posicin betweeneandf. Pu


ede omitir espacios en blanco y abreviar palabras clave en estas expresiones si
el resultado es claro. Este ejemplo se puede abreviar"1,0 +5c ".
-Nchars Similar a la forma anterior, pero la posicin se mueve backwardsncharacter
s.
+Nlas siguientes lneas Movesnlines pasado el ndice dado. Tkinter intenta abandonar
la nueva posicin en la misma columna que la de la lnea a la izquierda, pero si la
lnea de la nueva posicin es ms corto, la nueva posicin ser al final de la lnea.
New Mexico Tech Computer Center Tkinter 8,5 referencia 85

-nlas siguientes lneas Movesnlines antes del ndice dado.


linestart se desplaza a la posicin de antes theirst carcter del ndice dado. Por eje
mplo, la posici linestart actual", se refiere al principio de la lnea ms cercana a
el puntero del mouse (ratn).
lineend se desplaza a la posicin despus del ltimo carcter del ndice dado. Por ejemplo
, la posicin "sel.ltima lineend " se refiere al final de la lnea que contiene el fi
nal de la seleccin actual.
wordstart la posicin antes del comienzo de la palabra que contiene el ndice determ
inado. Por ejemplo, el ndice "wordstart 11.44" se refiere a la posicin antes de la
palabra que contiene 44 posicin en la lnea 11.
A los efectos de esta operacin, una palabra es una cadena consecutiva de letra, dg
ito o subrayado (_) caracteres, o un solo carcter que es ninguno de estos tipos.
24.2 .Widget de texto marca
una marca representa aloating posicin en algn lugar en el contenido de un widget d
e texto.
Manejar cada marca por lo que le da un nombre. Este nombre puede ser cualquier c
adena que no incluir espacios en blanco o perodos.
Hay dos marcas especiales. tk.INSERT es la posicin actual del cursor la insercin,
y los conocimientos tradicionales.EN LA ACTUALIDAD es la posicin ms cercana al cur
sor del ratn.
Marcas loat junto con el hotel. Si modificar texto en algn lugar lejos de una mar
ca, la marca permanece en la misma posicin con respecto a sus vecinos inmediatos.
Las marcas tienen una propiedad llamada gravedad que controla lo que sucede cuan
do se inserta texto en una marca. El valor predeterminado gravedad istk., lo que
significa que cuando se inserta texto en la marca, la marca permanece despus de
la finalizacin del nuevo texto. Si establece la gravedad de una marca totk.IZQUIE
RDA (utilizando el widget de texto .mark_gravity() mtodo), la marca se mantendr en
la posicin justo antes del texto recin insertado en la marca.
Eliminar el texto alrededor de una marca no quitar la marca. Si desea eliminar u
na marca, utilizar el .mark_unset() en el widget de texto.
Consulte la Seccin 24.8 , "Mtodos ontexto widgets" (p. 88), a continuacin, para ver
la forma de utilizar las marcas.
24.3 .Widget de texto imgenes
puede colocar una imagen o mapa de bits en un widget de texto. Se trata de un pe
rsonaje cuyo nico tamao natural es el tamao del objeto. Consulte la Seccin 5.9 , "Img
enes" (p. 14) Andsection 5,7 , "Mapas" (p. 12).
Las imgenes se colocan en el widget de texto llamando a ese widget's .image_creat
e(). Vea a continuacin la secuencia de llamada y otros mtodos para la manipulacin
de imgenes.
Las imgenes son manipulados por pasar su nombre a mtodos en el widget de texto. Tk
inter puede dar un nombre para la imagen, o puede dejar que Tkinter generar un n
ombre predeterminado para esa imagen.
Una imagen puede aparecer cualquier nmero de veces en el sameText widget. Cada in
stancia llevarn un nombre nico. Este nombre puede ser utilizado como un ndice.
86 8.5 Referencia Tkinter Nuevo Mxico Tech Computer Center

24,4 .widget de texto windows


puede poner cualquier widget Tkinter, incluso una trama que contiene otros widge
ts en un widget de texto. Por ejemplo, puede colocar un botn totalmente funcional
o de un conjunto de botones en un widget de texto.
Utilice el.window_create() en el widget de texto para agregar el widget. Para la
secuencia de llamada y mtodos relacionados, vase la seccin 24,8 , "Mtodos ontexto w
idgets" (p. 88).
24.5 .Widget de texto etiquetas
hay muchas maneras de cambiar tanto el aspecto y la funcionalidad de los element
os de un widget de texto.
En el texto, puede cambiar la fuente, el tamao y el color. Adems, puede que el tex
to, widgets, o imgenes incrustadas responder a las acciones del ratn o del teclado
.
Para controlar estos apariencia y caractersticas funcionales, se asocia cada una
de las caractersticas con una etiqueta. A continuacin, puede asociar una etiqueta
con un nmero de fragmentos de texto en el widget.
El nombre de una etiqueta puede ser cualquier cadena que no contiene espacios en
blanco o perodos.
Hay una etiqueta especial predeined calledSEL . Esta es la regin seleccionada act
ualmente, si los hubiere.
Desde cualquier carcter puede ser parte de ms de una etiqueta, no hay una etiqueta
pila que ordena a todas las etiquetas. Las entradas se agregan al final de la l
ista de etiquetas, y ms tarde las entradas tienen prioridad sobre las entradas an
teriores.
As, por ejemplo, si hay un charactercthat forma parte de dos regiones etiquetadas
en la etiqueta pila de los que a ser verde yt2quiere t1andt2 y azul,cwill t1es
ms profunda en azul porque t2, yt1quiere que el texto t2tiene precedencia overt1.
Puede cambiar el orden de las etiquetas en el tag pila.
Las etiquetas se crean mediante el.tag_add() en el widget de texto. Consulte la
Seccin 24.8 , "Mtodos de widgets de texto" (p. 88), a continuacin, para obtener inf
ormacin acerca de este tema y mtodos relacionados.
24.6 . Las fichas de Configuracin aText widget
widgets forText Thetabs opcin te da un nmero de maneras de establecer tabulaciones
en el widget.
El valor predeterminado es colocar las fichas cada ocho caracteres.
Para configurar speciic tabulaciones, establezca esta opcin en una secuencia de u
no o ms distancias. Por ejemplo, ajuste fichas= ( " 3c", " 5c' , ' 12c') ficha 3
topes, 5, y 12 cm en el lado izquierdo. La ltima ficha se establecen, las fichas
tienen el mismo ancho que la distancia entre los dos ltimos tabulaciones existent
es. Por lo tanto, continuar con nuestro ejemplo, porque12c-5c es de 7 cm, si el
usuario mantiene presionada la tecla Tab, el cursor se coloca en 19cm, 26cm, 33c
m, y as sucesivamente.
Normalmente, el texto despus de un carcter de tabulacin est alineada con el borde iz
quierdo de la ficha, pero puede incluir cualquiera de los keywordstk.IZQUIERDA ,
tk. ,tk.CENTRO , ortk.numrico en la lista tras una distancia, y que se cambie la
posicin del texto despus de cada ficha.
Atk.tabulacin izquierda tiene el comportamiento predeterminado.
Atk.tabulacin a la derecha para colocar el texto por lo que su borde derecho est e
n el tope.
Atk.CENTRO centro ficha el texto siguiente de la tabulacin.
Atk.NUMRICO posicin de tabulacin lugar siguiente texto a la izquierda de la parada
hasta el irst ( ' .' ) en el texto despus de que, en el perodo se centra en el top
e, y el resto del texto se coloca a la derecha de la misma.
New Mexico Tech Computer Center Tkinter 8,5 referencia 87

Por ejemplo, settingtabs= (0.5i", " 0.8i", tk.DERECHO, " 1.2i", tk.CENTRO, ' 2i'
, tk.NUMRICO) que establece cuatro posiciones de tabulacin: una ficha alineada a l
a izquierda parar media pulgada de la parte izquierda, a la derecha de tabulacin
alineada
&#153; 0,8 del lado izquierdo, un centro de detencin de tabulacin alineada
&#153; 1,2 desde la izquierda y un valor numrico alineados
&#153; 2 tabulacin de la izquierda.
24.7 . Widget acumulacin delcampo undo/redo
acumulacin delcampo pila widget tiene un mecanismo incorporado que le permite apl
icar las operaciones de deshacer y rehacer que puede cancelar o reponer los camb
ios en el texto en el widget.
Aqu es cmo el undo/redo pila obras:
Cada cambio en el contenido est grabado por empujar las entradas en la pila que d
escribir el cambio, es decir si se trata de una insercin o supresin. Estas entrada
s registro el viejo estado de los contenidos, as como el nuevo estado: si una eli
minacin, el texto eliminado se registra; si una insercin, el texto insertado se re
gistran, junto con una descripcin de la ubicacin y si se trataba de una insercin o
supresin.
El programa tambin puede insertar un registro especial llamado un separador en la
pila.
Una operacin de deshacer los cambios del contenido del widget a la situacin en que
se encontraban en algn punto anterior. Esto se logra invirtiendo todos los cambi
os impulsados en el undo/redo pila hasta que alcanza un separador o hasta que se
agote de la pila.
Sin embargo, tenga en cuenta que Tkinter tambin recuerda cmo gran parte de la pila
se invirti en la operacin de deshacer, hasta que alguna otra operacin de edicin cam
bia el contenido del widget.
Una operacin de rehacer slo funciona si no hay ninguna operacin de edicin ha tenido
lugar desde la ltima operacin de deshacer. Adems, se aplica todos los deshacer oper
aciones.
De los mtodos utilizados para implementar el undo/redo pila, consulte la.edit_red
o , .edit_reset , .edit_separator , y .edit_undo mtodos en la Seccin 24.8 , "Mtodos
ontexto widgets" (p. 88).
El mecanismo de deshacer no est habilitada de forma predeterminada; debe establec
er theundo opcin en el widget.
24.8 . Mtodos ontexto widgets
Estos mtodos estn disponibles en todas widgets de texto:
.bbox(index) devuelve el cuadro delimitador para el carcter en el ndice dado, una
4-tupla(x,y,ancho,alto).
Si el personaje no es visible, returnsNone . Tenga en cuenta que este mtodo no pu
ede devolver un valor preciso a menos que llame a la.update_idletasks() (vase la
Seccin 26, "Universal widget- sao" (p. 97).
.Comparar( ndice1,op,index2) compara las posiciones de ambos ndices en el widget d
e texto y devuelve true si el relationalopholds betweenindex1 andindex2 . Qu compa
racin Theopspeciies a utilizar, uno de:' &lt; ' , ' &lt;= ' , ' ==' , ' ! = ' ,
' &gt;=' , o' &gt; ".
Por ejemplo, para un texto widgett,t.compare('2.0', ' &lt;= ' ,) devuelve true s
i el comienzo de la segunda lnea es antes o al final del texto, int.
.Delete(ndice1,index2 =ninguno) Elimina texto empezando justo afterindex1 . Si se
omite el segundo argumento, slo un carcter es de leted. Si un segundo ndice, elimi
nacin producto hasta, pero no incluyendo, el carcter afterin- dex2 . Recordar que
los ndices sentarse entre los caracteres.
88 8.5 Referencia Tkinter Nuevo Mxico Tech Computer Center

.dlineinfo( index) devuelve un rectngulo de seleccin de la lnea que contiene el giv


enindex . Por la forma de el cuadro delimitador, y una advertencia al ralent las
tareas de actualizacin, consulte la deinition del.bbox mtodo anterior.

.Edit_modified(arg=None) Consultas, conjuntos, o borra el modiiedlag. Thislag se


utiliza para determinar si el contenido del widget se han cambiado. Por ejemplo
, si va a implementar un editor de texto en aText widget, se podra utilizar el la
g modiied para determinar si el contenido ha cambiado desde la ltima vez que se g
uard el contenido de aile.
Cuando son llamadas con un argumento, este mtodo si el modiiedlag returnsTrue se
ha establecido,False si es claro. Tambin puede establecer de manera explcita la mo
diied lag por pasar verdaderos valor a este mtodo, o por pasar aFalse valor.
Cualquier operacin que inserta o elimina texto, ya sea por las acciones del progr
ama o las acciones del usuario, o una operacin de deshacer o rehacer la modiiedla
g.
.Edit_redo() realiza una operacin de rehacer. Para obtener ms informacin, consulte
la seccin 24.7 , "acumulacin delcampo widget undo/redo pila" (p. 88).
.Edit_reset() borra la pila de deshacer.
.Edit_separator() Inserta un separador en la pila de deshacer. Este separador li
mita el mbito de aplicacin de una futura operacin de deshacer para incluir slo los c
ambios impulsados desde el separador. Para obtener ms informacin, consulte la secc
in 24.7 , "acumulacin delcampo widget undo/redo pila" (p. 88).
.Edit_undo() invierte todos los cambios en el contenido del widget desde el ltimo
separador fue empujado en la pila de deshacer, o toda la manera a la parte infe
rior de la pila si la pila no contiene separadores. Para obtener ms informacin, co
nsulte la seccin 24.7 , "acumulacin delcampo widget undo/redo pila" (p. 88). Es u
n error si la pila de deshacer est vaca.
.Image_create( index[,option=value, ... ]) Este mtodo, se inserta una imagen en e
l widget. La imagen es tratada como otro carcter, cuyo tamao es la imagen de tamao
natural.
Las opciones de este mtodo se muestran en la siguiente tabla. Es posible que le p
ase una serie first name%%: segn=valor- argumentos, o un diccionario de los nombr
es de las opciones y valores.
alinee esta opcin speciies cmo la imagen se va a alinear verticalmente si su altur
a es inferior a la altura de su lnea. Los valores pueden betop para alinear en la
parte superior de su espacio en el centro, parte inferior para colocar en la pa
rte inferior; orbaseline a la parte inferior de la imagen con la lnea de base del
texto.
imagen la imagen que se va a utilizar. Consulte la Seccin 5.9 , "Imgenes" (p. 14)
Se puede asignar un nombre a esta instancia de la imagen. Si se omite esta opcin,
Tkinter, generar un nombre nico. Si crea varias instancias de la imagen en el wid
get sameText, Tkinter, generar un nombre nico aadiendo un " #" seguido de un nmero.
Si se le suministran padx, esta opcin es un nmero de pxeles de espacio adicional qu
e se ha aadido a ambos lados de la imagen.
pady si se entregan, esta opcin es un nmero de pxeles de espacio adicional que se aa
de por encima y por debajo de la imagen.
.Get(ndice1, index2 =ninguno) utilizar este mtodo para recuperar el texto actual d
el widget. Recuperacin comienza en indexindex1 . Si se omite el segundo argumento
, se obtiene el carcter afterindex1 . Si se proporciona un segundo ndice,
Nuevo Mxico Tech Computer Center Tkinter 8,5 referencia 89

se obtiene el texto entre los dos ndices. Las imgenes incrustadas y windows (widge
ts) son ignorados.
Si la gama incluye varias lneas, que son separados por salto de lnea ( ' \n' ) car
acteres.
.Image_cget( index,opcin) para recuperar el valor actual de un conjunto de opcion
es en una imagen incrustada, llame a este mtodo con un ndice apuntando a la imagen
y el nombre de la opcin.
.Image_configure( index,option,...) para establecer una o ms opciones en una imag
en incrustada, llame a este mtodo con un ndice apuntando a la imagen como argument
o theirst, y uno o dos moreoption=valor.

Si se especifica sin opciones, usted obtendr un diccionario deining todas las opc
iones de la imagen, y los valores correspondientes.
.Image_names() Este mtodo devuelve una tupla de los nombres de todos los widget d
e texto de imgenes incrustadas.
.Index(i) Para un ndicei, este mtodo devuelve la posicin equivalente en forma de lne
a.char".
.Insert(index,texto,etiquetas=None) Inserta el giventext en el givenindex .
Si se omite thetags argumento, el texto recin insertado se marcarn con las etiquet
as que se aplican a los personajes tanto antes como despus del punto de insercin.
Si desea aplicar una o ms etiquetas en el texto que se va a insertar, proporcione
un tercer argumento una tupla de cadenas de etiquetas. Las etiquetas que se apl
ican a los personajes por el punto de insercin se ignoran.
Nota: El tercer argumento debe ser una tupla. Si se proporciona un argumento de
lista, Tkinter se producir un error de forma silenciosa para aplicar las etiqueta
s. Si se proporciona una cadena, cada carcter ser tratada como una etiqueta.
.Mark_gravity( marca,gravedad=None) Los Cambios o consultas la gravedad de una m
arca ya existente; vase la seccin 24,2 , "widget de texto" (p. 86), lo anterior, p
ara obtener una explicacin de la gravedad.
Para establecer la gravedad, pase el nombre de la marca, seguido de eithertk.IZQ
UIERDA ortk.DERECHA . Toind la gravedad de una marca ya existente, omita el segu
ndo argumento y el mtodo returnstk.tk.IZQUIERDA o DERECHA .
.Mark_names() devuelve una secuencia de los nombres de todas las marcas en la ve
ntana, includingtk.INSERT y tk.CURRENT .
si no hay marcas siguientes, el mtodo devuelve una cadena vaca. ; .Mark_next( inde
x) devuelve el nombre de la marca tras la givenindex
si el ndice se encuentra en forma numrica, el mtodo devuelve theirst marca en esa p
osicin. Si el ndice es una marca, el mtodo devuelve la siguiente marca siguientes q
ue marca, que puede ser en la misma posicin numrica.
.Mark_previous( index) devuelve el nombre de la marca anterior a la givenindex .
Si no hay marcas anteriores, el mtodo devuelve una cadena vaca.
Si el ndice se encuentra en forma numrica, el mtodo devuelve devuelve la ltima marca
en esa posicin. Si el ndice es una marca, el mtodo devuelve la anterior marca, que
puede ser en la misma posicin numrica.
90 8.5 Referencia Tkinter Nuevo Mxico Tech Computer Center

.mark_set( marca index) Si no hay marca con namemark existe, se crea uno withtk.
gravedad y whereindex puntos. Si la marca ya existe, se mueve a la nueva ubicacin
.
Este mtodo puede cambiar la posicin de thetk.INSERT ortk.los ndices actuales.
.Mark_unset( marca) Elimina la denominada marca. Este mtodo no se puede utilizar
para quitar thetk.INSERT ortk.marcas actuales.
.Scan_dragto( x,y) Ver.scan_mark , a continuacin.
.Scan_mark( x,y) Este mtodo se utiliza para aplicar desplazamiento rpido de aText
widget. Normalmente, el usuario presiona y mantiene el botn del ratn en alguna otr
a posicin en el widget, y, a continuacin, mueve el ratn en la direccin deseada, y el
widget se mueve en esa direccin a una velocidad proporcional a la distancia a la
que el ratn se ha movido desde el botn se ha pulsado. La peticin puede ser cualqui
er combinacin de vertical u ho- rizontal desplazamiento.
Para implementar esta caracterstica, enlazar un botn derecho del ratn en un control
ador que llama.scan_mark( x, y), wherexandyare la posicin actual del ratn. A conti
nuacin, puede enlazar el <Motion>Evento a un controlador que llama.scan_dragto( x
,y), wherexandyare la nueva posicin del ratn.
.SEARCH(PATTERN,INDEX,OPTION,...) Busca forpattern (que puede ser una cadena o u
na expresin regular) en el bufer givenindex a partir de la . Si se realiza correc
tamente, se devuelve el ndice de la "lnea.char'forma; si se produce un error, se d
evuelve una cadena vaca.
Las opciones que se permiten para este mtodo son:

hacia atrs establecer esta opcin toTrue para buscar hacia atrs en el ndice. Por defe
cto es hacia delante, tomando en
cuenta si la opcin est establecida en anIntVar variable de control, cuando no hay
un partido que puede recuperar la longitud del texto que coincida con el mtodo ge
t(), en esa variable despus de que el mtodo devuelve.
establecer esta opcin toTrue para buscar texto que coincida exactamente con invas
i . Esta es la opcin predeterminada. Comparar theregexp opcin que aparece a continuac
in.
adelante establecer esta opcin toTrue para buscar hacia adelante del ndice. Esta e
s la opcin predeterminada.
regexpSet esta opcin toTrue invasi de interpretar como un Tcl-estilo expresin regular
.
El valor predeterminado es para buscar una coincidencia exacta topattern . Tcl l
as expresiones regulares son un subconjunto de Python expresiones regulares, el
apoyo a estos features:.^[c1... ](...) * + ?e1 |e2
nocaseSet esta opcin a 1 a ignorar maysculas. El valor predeterminado es una bsqued
a con distincin de maysculas y minsculas.
stopindex para limitar la bsqueda, establezca esta opcin en el ndice ms all que la bsq
ueda no debe ir.
.Ver(index) Si el texto que contiene el ndice determinado no est visible, desplaza
rse por el texto hasta que sea visible el texto.
.Tag_add( tagName,ndice1, index2 =ninguno) Este mtodo asocia la etiqueta namedtagN
ame con una regin del contenido empezando justo despus ndice ndice1 y hasta indexind
ex2 . Si omitindex2 , slo el carcter afterindex1 est etiquetado.
New Mexico Tech Computer Center Tkinter 8,5 referencia 91

.tag_bind( tagName,secuencia,func,agregar=None) Este mtodo se une un evento para


todos los texto etiquetado withtagName . Consulte la Seccin 54, "Eventos" (p. 157
), a continuacin, para obtener ms informacin sobre enlaces de eventos.
Para crear un nuevo enlace de texto etiquetado, utilice el irst tres argumentos:
secuencia identiique el evento, andfunc es la funcin que desea que se llama cuand
o el evento ocurre.
Para agregar otro enlace a una etiqueta existente, pase el sameirst tres argumen
tos y' +' como el cuarto argumento.
A ind lo que existen enlaces para una determinada secuencia en una etiqueta, par
a slo el irst dos argumentos, el mtodo devuelve la funcin asociada.
Toind todos los enlaces de una determinada etiqueta, slo pasan theirst argumento;
el mtodo devuelve una lista de todos los tag'ssequence argumentos.
.Tag_cget( tagName,opcin) Utilice este mtodo para recuperar el valor de la givenop
tion para el giventagName .
.Tag_config( tagName,option,...) para cambiar el valor de las opciones de la eti
queta namedtagName , pasar en uno o dos moreoption=valor.
Si pasa un nico argumento, le ser reembolsado un diccionario deining todas las opc
iones y los valores que se encuentran actualmente en vigor para la denominada ta
g.
Aqu estn las opciones de configuracin etiquetas:
antecedentes El color de fondo para el texto con esta etiqueta. Tenga en cuenta
que no puede usebgas un ab- breviation.
bgstipple para hacer que el fondo aparezca griscea, establezca esta opcin en uno d
e los nombres de mapa estndar (vase la seccin 5.7 , "Mapas" (p. 12). Esto no tiene
ningn efecto a menos que se especifique tambin el c cer .
borderwidth Ancho del borde alrededor del texto con esta etiqueta. Valor predete
rminado es0. Tenga en cuenta que no puede usebdas una abreviatura.
fgstipple para que el texto aparezca griscea, establezca esta opcin a bitmap nombr
e.
fuente La fuente utilizada para mostrar texto con esta etiqueta. Consulte la sec
cin 5.4 "Type" (p. 10).

primer plano el color utilizado para el texto con esta etiqueta. Tenga en cuenta
que no puede usar thefgabbreviation aqu.
justifyThejustify theirst opcin de carcter de cada lnea que determina la lnea justii
ed:tk.IZQUIERDA (el valor por omisin), tk.CENTRO , ortk.DERECHA .
lmargin1 cunto guin theirst lnea de un bloque de texto que tiene esta etiqueta. El
valor predeterminado es0. Vase la Seccin 5.1 , "dimensiones" (p. 9)Para los valore
s permitidos.
lmargin2 cunto guin lneas sucesivas de un bloque de texto que tiene esta etiqueta.
El fallo es0.
compensar la cantidad de elevacin (valores positivos) o inferior (valores negativ
os) texto con esta etiqueta con respecto a la lnea de base. Utilice esta opcin par
a conseguir superndices y subndices, por ejemplo.
Para valores permitidos, consulte la Seccin 5.1 , "dimensiones" (p. 9).
overstrike Setoverstrike=1 para dibujar una lnea horizontal en el centro del text
o con esta etiqueta.
para otros valores posibles vase la seccin 5.6 , "Socorro estilos" (p. 12). ; Soc
orro que el 3-D effect para utilizar en el texto con esta etiqueta. El valor pre
determinado isrelief=tk
Tkinter.PLANA 8,5 referencia 92 Nuevo Mxico Tech Computer Center

rmarginSize del margen derecho de fragmentos de texto con esta etiqueta. Valor p
redeterminado es0.
espacio1 Esta opcin speciies cunto dinero extra espacio vertical se coloca encima
de cada lnea de texto con esta etiqueta. Si una lnea se envuelve, este espacio se
aade slo theirst lnea antes que ocupa en la pantalla. Valor predeterminado es0.
espacio2 Esta opcin speciies cunto ms espacio vertical para agregar entre muestra ln
eas de texto con esta etiqueta cuando una lnea lgica vueltas. Valor predeterminado
es0.
espacio3 Esta opcin speciies cunto dinero extra espacio vertical se aade debajo de
cada lnea de texto con esta etiqueta. Si una lnea se envuelve, este espacio se aade
slo despus de la ltima lnea que oc- cupies en la pantalla. Valor predeterminado es0
.
fichas fichas cmo se expanden en lneas con esta etiqueta. Consulte la Seccin 24.6,
"Configuracin de fichas aText widget" (p. 87).
subrayar Setunderline=1 a subrayar el texto con esta etiqueta,
envolviendo el tiempo las lneas se ajustan en el texto con esta etiqueta. Consult
e la descripcin de thewrap opcin para widgets de texto, anteriormente.
.Tag_delete( tagName,...) para eliminar una o ms etiquetas, pase sus nombres a es
te mtodo. Sus opciones y enlaces desaparece, y las etiquetas se retira de todas l
as regiones de texto.
.Tag_lower( tagName,belowThis =ninguno) Utilice este mtodo para cambiar el orden
de las etiquetas en el tag pila (consulte la seccin 24.5 , "widget de texto etiqu
etas" (p. 87), lo anterior, para obtener una explicacin de la etiqueta pila). Si
pasan dos argumentos, la etiqueta con nametagName se desplaza a una posicin just
o debajo de la etiqueta con namebelowThis . Si se le pasa un nico argumento, la e
tiqueta se mueve a la parte inferior de la etiqueta pila.
.Tag_names( index=None) Si se pasa un argumento de index, este mtodo devuelve una
secuencia de todos los nombres de las etiquetas que estn asociados con el carcter
de ese ndice. Si no se pasan argumentos, se obtiene una secuencia de todos los n
ombres de etiqueta deined en el widget de texto.
.Tag_nextrange( tagName,ndice1 ndice2 =ninguno) Este mtodo busca en una regin determ
inada para lugares donde una etiqueta namedtagName comienza. La regin bsqueda comi
enza en indexindex1 y termina en indexindex2 . Si el ndice2 argumento se omite, l
a bsqueda va todo el camino hasta el final del texto.
Si hay un lugar en las regiones en donde la etiqueta se inicia, el mtodo devuelve
una secuencia[de i0, i1] , i0es el ndice de marcado carcter theirst andi1es el ndi
ce de la posicin justo despus de la ltima etiqueta.

Si no hay etiqueta comienza se encuentran en la regin, el mtodo devuelve una caden


a vaca.
.Tag_prevrange( tagName,ndice1 ndice2 =ninguno) Este mtodo busca en una regin determ
inada para lugares donde una etiqueta namedtagName comienza. La regin bsqueda se i
nicia antes indexindex1 y termina en indexindex2 . Si el ndice2 argumento se omit
e, la bsqueda va todo el camino hasta el final del texto.
Los valores de retorno como en.tag_nextrange() .
.Tag_raise( tagName,aboveThis =ninguno) Utilice este mtodo para cambiar el orden
de las etiquetas en el tag pila (consulte la seccin 24.5 , "widget de texto etiqu
etas" (p. 87), lo anterior, para obtener una explicacin de la etiqueta pila). Si
pasan dos argumentos, la etiqueta con nametagName se desplaza a una posicin just
o encima de la etiqueta con nameaboveThis . Si pasa un nico argumento, que etique
ta se desplazar a la parte superior de la pila etiqueta.
New Mexico Tech Computer Center Tkinter 8,5 referencia 93

.tag_ranges( tagName) Este methodinds todas las gamas del texto en el widget que
se etiquetan con nametagName , y devuelve una secuencia de caracteres theirst a
ntes del rango y [S0,E0,S1,E1, [... ], donde eachsiis el ndice slo iniciativas ind
ustriales el ndice slo despus del ltimo carcter de la gama.
.Tag_remove( tagName,ndice1,index2 =ninguno) Elimina la etiqueta de todos los car
acteres namedtagName betweenindex1 andindex2 . Ifindex2 es omitido, el indicador
se eliminar de ese nico carcter afterindex1 .
.Tag_unbind( tagName,secuencia,funcid=None) eliminar la cita obligatoria para lo
s de la etiqueta givensequence namedtagName . Si hay varios controladores para e
sta secuencia y etiqueta, slo se pueden eliminar un controlador por pasa como el
tercer argumento.
.Window_cget( index,opcin) devuelve el valor de la givenoption el widget en el gi
venindex.
.Window_configure( index,opcin) para cambiar el valor de las opciones de widget i
ncrustado en el givenindex , pase en uno o moreop- pares=valor.
Si pasa un nico argumento, le ser reembolsado un diccionario deining todas las opc
iones y sus valores actualmente en vigor para el widget.
.Window_create( index,option,...) Este mtodo crea una ventana donde un widget pue
de ser incrustado en un widget de texto. Hay dos formas de facilitar el widget i
ntegrado:
a. puede utilizar la opcin del widget en este mtodo, o b. usted puede deine un pro
cedimiento que va a crear el widget y pasar ese procedimiento como una devolucin
de llamada para thecreate opcin.
Las opciones de.window_create() son:
alignSpeciies cmo colocar el widget integrado verticalmente en su lnea, si no es t
an alto como el texto de la lnea. Los valores son los siguientes:align=tk.CENTRO
(el valor predeterminado), que centra el widget en vertical en la lnea; align=tk.
TOP , lo que coloca la parte superior de la imagen en la parte superior de la lne
a; align=tk.EN RESUMEN , que coloca la parte inferior de la imagen en la parte i
nferior de la lnea; y alinee=tk.REFERENCIA , que alinea la parte inferior de la i
magen con la lnea de base del texto.
crear un procedimiento que va a crear el widget de la demanda. Este procedimient
o no tiene argumentos y debe crear el widget como un hijo de el widget de texto
y devolver el widget como resultado.
padx espacio extra aadido a la izquierda y a la derecha del widget en la lnea de t
exto. Valor predeterminado es0.
pady espacio extra aadido por encima y por debajo del widget en la lnea de texto.
Valor predeterminado es0.
estirar Esta opcin controla lo que sucede cuando la lnea es ms alto que el widget i
ncrustado.
Normalmente esta opcin es0, lo cual significa que el widget incrustado est a la iz
quierda en su tamao natural.

Si setstretch=1 , el widget se estira verticalmente toill la altura de la lnea, y


thealign opcin se ignora.
ventana El widget para integrarse. Este widget debe ser un elemento secundario d
el widget de texto.
.Window_names() devuelve una secuencia que contiene los nombres de todos los wid
gets.
94 8.5 Referencia Tkinter Nuevo Mxico Tech Computer Center

.xview(tk.MOVETO, fraccin) Este mtodo se desplaza horizontalmente el widget de tex


to, y se ha diseado para el enlace a la opcin de comando de un desplazamiento hori
zontal.
Se puede llamar a este mtodo en dos diferentes formas. Llamada Theirst coloca el
texto a un valor dado por fraccin , donde 0.0 se desplaza el texto a su posicin ms
a la izquierda y derecha 1.0 a su posicin.
.Xview(tk.SCROLL, n,qu) La segunda llamada se mueve el texto a la izquierda o a l
a derecha: argumento thewhat speciies cunto movimiento y pueden ser eithertk.UNID
ADES ortk PGINAS , andntells cuntos caracteres o pginas para mover el texto a la de
recha respecto a su imagen (o a la izquierda, si es negativo).
.Xview_moveto( fraccin) Este mtodo se desplaza el texto de la misma manera que.xvi
ew(tk.MOVETO, fraccin).
.Xview_scroll( n,qu) mismo que.xview(tk.SCROLL, n,qu).
.Yview(tk.MOVETO, fraccin) El desplazamiento vertical equivalente of.xview(tk.MOV
ETO,... ).
.Yview(tk.SCROLL, n,qu) El desplazamiento vertical equivalente of.xview(tk.SCROLL
,... ). Cuando se desplaza verticalmente bytk.LAS UNIDADES, las unidades son lne
as.
.Yview_moveto( fraccin) El desplazamiento vertical equivalente.xview_moveto() .
.Yview_scroll( n,qu) El desplazamiento vertical equivalente.xview_scroll() .
25.Nivel Superior : ventana de nivel superior mtodos
una ventana de nivel superior es una ventana que tiene una existencia independie
nte en el administrador de ventanas. Est decorado con el gestor de ventanas de de
coraciones, y se pueden mover y cambiar de tamao independientemente. La aplicacin
puede utilizar cualquier nmero de ventanas de nivel superior.
Para cualquier widgetw, puede llegar a su nivel superior usingw widget.winfo_top
level() .
Para crear una nueva ventana de nivel superior:
w=tk.Nivel Superior( serie,...) Las opciones son las siguientes:
Cuadro 34.ventana prinicpal mtodos
bgorbackground El color de fondo de la ventana. Consulte la Seccin 5.3 , "Colores
" (p. 10).
bdorborderwidth ancho del borde en pxeles; el valor predeterminado es0. Para ver
los valores posibles, consulte la Seccin 5.1 , "dimensiones" (p. 9). Vase tambin t
herelief opcin a continuacin.
class_ puede dar una ventana aToplevel"clase" nombre. Esos nombres se comparan c
on la opcin base de datos, por lo que su aplicacin puede recoger las preferencias
configuracin del usuario (como los colores) en nombre de la clase. Por ejemplo, s
e puede disear una serie de pop-ups llamada "gritones", y a todos de withclass_=
"Screamer". A continuacin, usted puede poner una lnea en su base de datos como es
ta opcin:
Nuevo Mxico Tech Computer Center Tkinter 8,5 referencia 95

* Screamer * antecedentes: rojo


y, a continuacin, si se utiliza el.option_readfile() mtodo para leer la opcin base
de datos, todos los widgets con nombre de la clase que se pondr por defecto en un

fondo rojo.
Esta opcin es namedclass_ becauseclass es una palabra reservada en Python.
cursor El cursor que aparece cuando el ratn est en esta ventana. Consulte la Seccin
5.8 , "Cursores" (p. 13).
altura altura de la ventana; vase la seccin 5.1 , "dimensiones" (p. 9).
highlightbackground El color de las focus resaltar cuando la ventana no tiene el
foco. Vase la Seccin 53, "Focus: enrutamiento entrada de teclado" (p. 155).
highlightcolor El color de resaltado del foco cuando el cristal tiene el enfoque
.
highlightthickness El espesor de la atencin. Por defecto es 1. Sethighlightthickness=0 para suprimir la presentacin de los resalte.
men Para proporcionar esta ventana con un nivel superior de barra de men, submen de
widget como el valor de esta opcin. En MacOS, este men aparecer en la parte superi
or de la pantalla cuando la ventana est activa. En Windows o Unix, aparecer en la
parte superior de la aplicacin.
padx Utilice esta opcin para proporcionar espacio adicional en los lados izquierd
o y derecho de la ventana. El valor es el nmero de pxeles.
pady Utilice esta opcin para proporcionar espacio adicional en la parte superior
o inferior de la ventana. El valor es el nmero de pxeles
de Normalmente, una ventana de nivel superior no tendr 3-d las fronteras en torno
a ella. Para obtener un borde sombreado, thebdoption mayor que su valor por def
ecto de cero, y therelief opcin en una de las constantes discutido en la Seccin 5.
6 , "Socorro estilos" (p. 12).
takefocus Normalmente, una ventana de nivel superior no recibe el foco. Usetakef
ocus=True si desea que sea capaz de tomar el enfoque; vase la Seccin 53, "Focus: c
lave de enrutamiento de entrada" (p. 155),
ancho el ancho de ventana deseado; vase la seccin 5.1 , "dimensiones" (p. 9).
Estos mtodos estn disponibles para ventanas de nivel superior:
.aspecto(nmin, dmin, nmax, dmax) limitan el ancho de la ventana raz:relacin longit
ud de la gama [nmin/dmin ,nmx/dmax].
.-Restaurar() si esta ventana se iconiied, expandirla.
.Geometra( newGeometry =ninguno) la geometra de la ventana. Respecto a la forma de
los argumentos, consulte la seccin 5.10 , "Geometra cadenas" (p. 15).
Si el argumento es omitido, el actual cadena geometra.
.Iconifica() Iconifica la ventana.
.Levante(aboveThis=None) para elevar esta ventana a la parte superior del orden
de apilamiento en el administrador de ventanas, llame a este mtodo sin argumentos
. Tambin puede elevar a una posicin en el orden de apilamiento anotherToplevel ven
tana justo encima de la ventana como un argumento.
96 8.5 Referencia Tkinter Nuevo Mxico Tech Computer Center

.menores(belowThis=None) Si el argumento se omite, se mueve la ventana en la par


te inferior del orden de apilamiento en el administrador de ventanas. Tambin pued
e mover la ventana a una posicin justo debajo de algunas otras ventana de nivel s
uperior pasando thatToplevel widget como argumento.
.Maxsize(width=None, altura=None) Establecer el tamao mximo de ventana. Si los arg
umentos son omitidos, devuelve el actual(ancho, altura).
.Minsize(width=None, altura=None) establecido el mnimo tamao de la ventana. Si los
argumentos son omitidos, devuelve el mnimo actual como una 2-tupla.
.Overrideredirect(flag=None) Si se llama con verdaderos argumentos, este mtodo es
tablece la anulacin redirigir lag, que elimina todas las decoraciones de gestor d
e ventanas la ventana, por lo que no se puede mover, redimensionar, iconiied o c
errado. Si se llama de aFalse argumento, el administrador de ventanas decoracion
es se restauran y la anulacin redirectlag se borra. Si se llama sin argumentos, d
evuelve el estado actual de la anulacin redirigir lag.
Asegrese de llamar al.update_idletasks() (vase la Seccin 26, "Universal widget- sao
" (p. 97) Antes de este retraso. Si antes de entrar en el bucle principal, la ve

ntana estar desactivada antes de que aparezca.


Este mtodo puede no funcionar en algunos plataformas Unix y MacOS.
.Resizable(width=None, altura=None) si es verdad, permitir redimensionado horizo
ntal. Ifheight es cierto, permitir redimensionado vertical. Si los argumentos se
omiten, devuelve el tamao actual como una 2-tupla.
.Estado(this=None) devuelve el estado actual de la ventana, uno de los siguiente
s:
'normal' : Aparece normalmente.
"Icnica" : Iconiied con el.iconifica().
'Retirado' : oculto; vase el.retirar() mtodo que se detalla a continuacin.
Para cambiar la ventana de estado, pase uno de los las cadenas por encima como u
n argumento del mtodo. Por ejemplo, a iconifica aToplevel instanceT, utilice"T. e
stado( 'iconificar") ".
.Ttulo(text=None) el ttulo de la ventana. Si el argumento es omitido, devuelve el
ttulo actual.
.Transitorio(parent=None) hacen que esta ventana, una ventana de cristal somepar
ent. el valor predeterminado es la ventana principal de esta ventana.
Este mtodo es til para de corta duracin dilogo emergente de windows. Una ventana apa
recer siempre en la parte delantera de su padre. Si la ventana principal es iconi
ied, la transitoria es iconiied as.
.Retirar() oculta la ventana. Restaurar con.-restaurar o.iconifica() .
26. Widget Universal mtodos
Los mtodos son deined abajo en todos los widgets. En las descripciones,wcan ser c
ualquier widget de cualquier tipo.
New Mexico Tech Computer Center Tkinter 8,5 referencia 97

w.despus,devolucin delay_ms(=None, * args) pide a Tkinter functioncallback con arg


umentsargs despus de un retraso de al leastdelay_ms milisegundos. No existe un lmi
te superior a la cantidad de tiempo que le tome realmente, pero la devolucin no s
e llama ms pronto de lo que te solicitan, y se llama slo una vez.
Este mtodo devuelve un entero "despus identiier" que se puede pasar al.after_cance
l() si desea cancelar la devolucin de llamada.
Si no pasa acallback argumento, este mtodo delay_ms milsimas de segundo, como en e
l .sleep() de la norma Pythontime mdulo espera 9.
w.after_cancel( id) Cancela una solicitud de devolucin establecido anteriormente.
despus . Theidargument es el resultado devuelto por la original.despus.
w.after_idle( func, * args) pide que Tkinter llamada functionfunc con argumentsa
rgs prxima vez que el sistema est inactivo, es decir, la prxima vez no hay eventos
para ser procesados. La devolucin de llamada se llama slo una vez. Si usted desea
que su devolucin de llamada que se llamar una vez ms, se debe llamar al mtodo.after_
idle nuevo.
w.bell() hace un ruido, generalmente un pitido.
w.bind(secuencia=None, func=None,agregar=None) Este mtodo se utiliza para conecta
r un enlace de eventos a un widget. Consulte la Seccin 54, "Eventos" (p. 157) Par
a la descripcin de enlaces de eventos.
Lasecuencia argumento describe el evento que esperamos, y thefunc argumento es u
na funcin que se llama cuando el evento ocurre en el widget. Si ya hay un enlace
para dicho evento para este widget, que normalmente es la antigua withfunc devol
ucin de llamada es sustituido, pero puede conservar ambas devoluciones por passin
gadd= ' +' .
w.bind_all( secuencia=None, func=None,agregar=None) Como.bind() , pero se aplica
a todos los widgets en toda la aplicacin.
w.bind_class( clase ,secuencia=None, func=None,agregar=None) Como.bind() , pero
se aplica a todos los widgets namedclassName (p.ej., "botn" ).
w.bindtags( visualizarlas=None) Si se llama a este mtodo, se obtiene el "enlace"
etiquetas para el widget como una secuencia de cadenas. Una etiqueta es el nombr
e de una ventana (empezando por' .' ) o el nombre de una clase (por ejemplo, "Li

stbox" ).
Puede cambiar el orden en el que los niveles obligatorios son llamados por pasar
como argumento la secuencia de etiquetas que desee vinculante el widget para ut
ilizar.
Consulte la Seccin 54, "Eventos" (p. 157) Para un anlisis de los niveles obligator
ios y su relacin con etiquetas.
w.del cget(opcional) devuelve el valor actual ofoption como una cadena. Tambin se
puede obtener el valor de una opcin para widget wasw[opciones].
w.clipboard_append( texto) aade la cadena giventext a la pantalla del portapapele
s, donde cortar y pegar las cadenas se almacenan por todo lo que las aplicacione
s de pantalla.
w.clipboard_clear() borra la pantalla del portapapeles (consulte.clipboard_appen
d() anterior).
9:98
Tkinter 8,5 referencia Nuevo Mxico Tech Computer Center

w.column_configure() Vase la Seccin 4.2 , "Otros mtodos de gestin grid" (p. 7).
w.config(option=value,...) igual.configure() .
w.configure( option=value,...) Establecer los valores de una o ms opciones. Para
las opciones cuyos nombres son Python palabras reservadas (clase ,de ,en), utili
ce una final de carcter de subrayado: "class_', 'from_', 'in_".
Tambin puede establecer el valor de una opcin para widgetwwith la declaracin w[opci
ones] =valor
si se llama al.config en un widget sin argumentos, tendrs un diccionario de todos
los widget las opciones actuales. Las claves son los nombres de opcin (incluyend
o alias likebdforborderwidth ).
El valor de cada una de las claves es la siguiente:
para la mayora de las entradas, una ive-tupla: (nombre de la opcin, la opcin clave
de la base de datos, la opcin clase de base de datos, el valor predeterminado, el
valor actual); o,
para nombres de alias (como"fg" ), un dos-tupla: (nombre de alias, nombre estndar
equivalente).
w.destroy() del Callingw.destruir() en un widgetwdestroyswand todos sus hijos.
w.event_add( virtual, * secuencias ) Este mtodo crea un evento virtual cuyo nombr
e est dado por elcentro argumento cadena. Cada argumento adicional describe una s
ecuencia, es decir, la descripcin de un evento fsico. Cuando este evento se produz
ca, el nuevo evento virtual se genera.
Consulte la Seccin 54, "Eventos" (p. 157) Para obtener una descripcin general de e
ventos virtuales.
w.event_delete( virtual, secuencias * ) Elimina eventos fsicos del evento virtual
cuyo nombre est dado por la stringvirtual . Si todos los eventos fsicos son retir
ados de un determinado evento virtual, que evento virtual no suceder ms.
w.event_generate( sequence, ** kw) Este mtodo hace un evento para activar sin nin
gn estmulo externo. El manejo de este evento es el mismo que si se hubiera desenca
denado por un estmulo externo. Lasecuencia argumento describe el evento que se va
a lanzar. Puede establecer valores para determinados mbitos en casode objeto med
iante la palabra clave=valor argumentos, donde thekeyword speciies el nombre de
aield en casode objeto.
Consulte la Seccin 54, "Eventos" (p. 157) Para una discusin completa de eventos.
w.event_info( virtual=None) Si se llama a este mtodo sin ningn argumento, obtendr u
na secuencia de todos los nombres de los eventos virtuales deined.
Para recuperar los eventos fsicos asociados con un evento virtual, pase este mtodo
el nombre del evento virtual y obtendr una secuencia de la physicalsequence nomb
res, orNone si el evento virtual nunca ha sido deined.
w.focus_displayof() devuelve el nombre de la ventana que actualmente tiene el fo
co de entrada en la misma pantalla en el widget.
Si no existe tal ventana tiene el foco de entrada, returnsNone .

Vase la Seccin 53, "Focus: enrutamiento entrada de teclado" (p. 155) Para obtener
una descripcin general de foco de entrada.
New Mexico Tech Computer Center Tkinter 8,5 referencia 99

w.focus_force() Vigor el foco de entrada al widget. Esto es grosero. Es mejor es


perar para el gestor de ventanas que le dan la atencin. Vase tambin.grab_set_global
() a continuacin.
w.focus_get() devuelve el elemento que tiene el foco en esta aplicacin, si los hu
biere; de lo contrario returnsNone .
w.focus_lastfor() Este mtodo recupera el nombre del widget que el foco de entrada
en la ventana de nivel superior que containsw. Si ninguno de este nivel superio
r de widgets ha tenido foco de entrada, se devuelve el nombre del nivel superior
de widget. Si esta aplicacin no tiene el foco de entrada, .focus_lastfor() devol
ver el nombre del widget que se obtenga el foco prxima vez que regrese a esta apli
cacin.
w.focus_set() Ifw la solicitud tiene el foco de entrada, el enfoque de remolque
va a saltar. Fla) la aplicacin no tiene el foco, los conocimientos tradicionales
se recuerde a darle townext la aplicacin obtiene el foco.
w.grab_current() si no hay una mano en pantalla de fuerza hacia delante, para de
volver su identiier, de lo contrario returnNone . Refirase a la Seccin 54 de "Even
tos" (p. 157) Para una discusin de agarre.
w.grab_release() Ifwhas un agarre en vigor, suelte el botn.
w.grab_set() Widgetwgrabs delante todos los eventos de aplicacin. Si hay otra aga
rrar en vigor, se acaba. Consulte la Seccin 54, "Eventos" (p. 157) Para una discu
sin de agarre.
w.grab_set_global() Widgetwgrabs todos los eventos por toda la pantalla. Esto se
considera grosero y slo deben utilizarse en gran necesidad. Cualquier otro agarr
e en vigor se va. Trate de utilizar este asombroso poder solamente a las fuerzas
del bien, y nunca para las fuerzas del mal, vale?
W.grab_status() si no hay una fuerza de agarre local (de.grab_set() ), este mtodo
devuelve la cadena "local". Si hay una mano en vigor (de.grab_set_global() ),
devuelve "global". Si no agarre est en vigencia, la misma returnsNone .
w.grid_forget() Vase la Seccin 4.2 , "Otra red mtodos de gestin" (p. 7).
w.grid_propagate() Vase la Seccin 4.2 , "Otros mtodos de gestin grid" (p. 7).
w.grid_remove() Vase la Seccin 4.2 , "Otros mtodos de gestin grid" (p. 7).
w.image_names() devuelve los nombres de todas las aplicaciones de imgenes semanas
w como una secuencia de cadenas.
w.las teclas() devuelve el nombre de opcin para el widget como una secuencia de c
adenas.
w.levante(aboveThis=None) Si el argumento isNone , la ventana containingwis se t
raslad a la parte superior de la ventana orden de apilamiento.
Para mover la ventana justo encima someToplevel windoww, passwas argumento.
w.lower(belowThis=None) Si el argumento isNone , la ventana containingwis se tra
slad a la parte inferior de la ventana orden de apilamiento. Para mover la ventan
a justo debajo someToplevel windoww, passwas un argumento.
Tkinter 100 referencia 8.5 Nuevo Mxico Tech Computer Center

w.mainloop() debe llamarse a este mtodo, por lo general despus de que todos los wi
dgets se crean esttica, para iniciar el proceso. Usted puede dejar el bucle princ
ipal con el mtodo quit() (ver ms abajo). Usted tambin puede llamar a este mtodo den
tro de un controlador de eventos para reanudar el bucle principal.
w.nametowidget( nombre) Este mtodo devuelve el widget isname cuyo nombre de la ru
ta. Consulte la Seccin 5.11 , "nombres de ventana" (p. 16). Si el nombre es desc
onocido, este mtodo raiseKeyError .

w.option_add( pattern,valor,prioridad=None) Este mtodo agrega valores predetermin


ados de la opcin a la Tkinter opcin base de datos. Invasi es una cadena que speciies
valorpredeterminado una de las opciones de una o ms aplicaciones. Los valores son
una prioridad de
20 propiedades por defecto mundial de widgets.
40 Speciic propiedades por defecto de las aplicaciones.
60 Para ver las opciones que vienen de useriles como su.Xdefaults ile.
80 Para ver las opciones que se establecen despus de que se inicie la aplicacin. E
ste es el nivel de prioridad predeterminado.
Nivel superior de tomar precedencia sobre las prioridades de los bajos. Consulte
la Seccin 27, "Estandarizacin ap de este mito es" (p. 105) Para obtener una descr
ipcin general de la opcin base de datos. La sintaxis de invasi argumento .option_add(
) es la misma que theoption de parte de los recursos requisitos especificados.
Por ejemplo, con el fin de obtener el efecto de este recurso requisitos especifi
cados:
Botn * * font: times24bold
la aplicacin (en este ejemplo) se pueden incluir estas lneas:
self.bigFont =tkFont.Font(familia= 'times', size=24, peso= "bold") self.option_a
dd(' Botn * * font", self.bigFont)
AnyButton widgets creados despus de ejecutar estas lneas, por defecto en negrita 2
4 veces font (a menos que ser descartada por afont opcin de una constructor).
w.option_clear() Este mtodo elimina todas las opciones del mdulo Tkinter opcin base
de datos. Esto tiene el efecto de volver a todos los valores por defecto.
w.option_get( nombre,nombre_clase ) utilizar este mtodo para recuperar el valor a
ctual de una opcin del Tkinter opcin base de datos. El primer argumento es la inst
ancia clave y el segundo argumento es el de la clase. Si hay alguna coincidencia
, devuelve el valor de la opcin que mejor se adapte. Si no hay coincidencias, vue
lve".
Consulte la Seccin 27, "estandarizacin" (p. 105) Para obtener ms informacin sobre cmo
las teclas se combinan con opciones.
w.option_readfile( fileName,prioridad=None) como una comodidad para el usuario c
onfiguracin, se puede designar un namedile donde los usuarios pueden poner sus op
ciones preferidas, utilizando el mismo formato que el.Xdefaults ile. Entonces, c
uando la aplicacin se est inicializando, puede pasar thatile a nombre de este mtodo
, y a las opciones de thatile se aadir a la base de datos. Si theile no existe, o
su formato no es vlido, este mtodo raisetk.TclError .
Consulte la Seccin 27, "estandarizacin" (p. 105) Para una introduccin a las opcione
s de base de datos y el formato de la opcin iles.
New Mexico Tech Computer Center Tkinter 8,5 referencia 101

w.register( funcin) Este mtodo crea un contenedor alrededor de un Tcl Pythonfuncti


on , y devuelve el nombre de contenedor Tcl como una cadena. Para ver un ejemplo
del uso de este mtodo, vase la seccin 10.2 , "Agregar validacin a una entrada widge
t" (p. 45).
w.quit() Este mtodo sale del bucle principal. Ver.mainloop() , por encima, para u
n anlisis de los principales bucles.
w.rowconfigure() Vase la Seccin 4.2 , "Otros mtodos de gestin grid" (p. 7).
w.selection_clear() Ifwcurrently tiene una seleccin (como el segmento resaltado d
e texto en una entrada widget), claro que seleccin.
w.selection_get() Ifwcurrently tiene una seleccin, este mtodo devuelve el texto se
leccionado. Si no hay ninguna seleccin, que plantea los ct.TclError .
w.selection_own() Makewthe propietario de la seleccin de pantalla inw, robando de
l dueo anterior, si los hubiere.
w.selection_own_get() devuelve el widget que posee en la actualidad la seleccin s
emanasw en pantalla. Raisestk.TclError si no existe tal seleccin.
w.tk_focusFollowsMouse() Normalmente, el foco de entrada ciclos a travs de una se
cuencia de widgets determinada por su jerarqua y orden de la creacin; vase la Seccin

53, "Focus: enrutamiento entrada de teclado" (p. 155). En cambio, puede decir
Tkinter para forzar la atencin dondequiera que el ratn es, simplemente llamar a es
te mtodo. No hay una manera fcil de deshacer, sin embargo.
w.tk_focusNext() devuelve el widget que followswin secuencia el enfoque transver
sal. Consulte la Seccin 53, "Focus:
enrutamiento entrada de teclado" (p. 155) Para una discusin del enfoque transvers
al.
w.tk_focusPrev() devuelve el widget que precedeswin el enfoque transversal secue
ncia.
w.cuadernos(secuencia,funcid=None) Este mtodo elimina enlaces onwfor el evento de
scrito bysequence . Si el segundo argumento es una devolucin vinculada a esa secu
encia, de devolucin que se retira y el resto, si los hubiera, se deja en su lugar
.
Si se omite el segundo argumento, todos los enlaces se eliminan.
Consulte la Seccin 54, "Eventos" (p. 157), a continuacin, a un debate general de e
nlaces de eventos.
w.unbind_all( secuencia) Elimina todos enlaces de eventos a travs de la aplicacin
para el acontecimiento descrito en la givensequence .
w.unbind_class( clase ,secuencia) Como.unbind() , pero se aplica a todos los wid
gets namedclassName (p.ej., "Entrada" o "Listbox" ).
w.update() Este mtodo hace la actualizacin de la pantalla. Slo se debe usar si que
sabes lo que ests haciendo, ya que puede dar lugar a comportamientos impredecible
s o bucle. Nunca se debe llamar desde un evento o una funcin callback que se llam
a desde una devolucin de llamada de evento.
Tkinter 102 referencia 8.5 Nuevo Mxico Tech Computer Center

w.update_idletasks() Algunas de las tareas de actualizacin de la pantalla, por ej


emplo, cambiar el tamao de la pantalla y dibujar los widgets, las tareas se llama
loco porque por lo general son diferidos hasta que la aplicacin ha inished gestin
de eventos y ha vuelto a la bucle principal para esperar nuevos acontecimientos
.
Si desea forzar la pantalla que se actualiza antes de la aplicacin junto al ralen
t, llamada la.update_id- letasks() mtodo en cualquier widget.
w.wait_variable( v) espera hasta que el valor de variablevis, incluso si el valo
r no cambia. Este mtodo entra en un bucle local espera, de modo que no bloquee el
resto de la aplicacin.
w.wait_visibility( w) Espere hasta que widgetw(normalmente aToplevel ) es visibl
e.
w.wait_window( w) Espere hasta que windowwis destruidos.
w.winfo_children() devuelve una lista de los hijos de allw, en su orden de apila
miento de la menor (inferior) a la ms alta (superior).
w.winfo_class() Returnsw nombre de clase (por ejemplo, "botn" ).
w.winfo_containing( rootX, rootY, displayof = 0) Este mtodo se utiliza para ind l
a ventana que contiene un punto (rootX ,rootY ). Si thedisplayof opcin es false,
las coordenadas son relativas a la aplicacin la ventana raz; si es true, las coor
denadas son tratados en relacin con la ventana de nivel superior que containsw. S
i los propsitos especi cos punto se encuentra en una de las aplicaciones de ventan
a de nivel superior, este mtodo devuelve la ventana; de lo contrario, returnsNone
.
w.winfo_depth() devuelve el nmero de bits por pxel semanasw en pantalla.
w.winfo_fpixels( nmero) para cualquier dimensionnumber (vase la seccin 5.1 , "dimen
siones" (p. 9), este mtodo devuelve la distancia en pxeles de una pantalla, como u
na serie de typefloat .
w.winfo_geometry() devuelve la geometra cadena que describe el tamao y ubicacin de
la pantalla gestin. Consulte la Seccin 5.10 , "Geometra cadenas" (p. 15).
Advertencia
La geometra no es exacta hasta que la aplicacin ha actualizado su rgimen. En partic

ular, todas las geometras son inicialmente' 1x1 +0 +0' hasta que la geometra de lo
s widgets y han negociado sus tamaos y posiciones. Consulte la.update_idletasks()
mtodo, en esta seccin para ver cmo asegurar que el widget de geometra es hasta la f
echa.
w.winfo_height() devuelve la altura actual de win pxeles. Vanse las observaciones
sobre actualizacin en geometra .winfo_geometry() , supra. Es posible que desee uti
lizar.winfo_reqheight() , se describe a continuacin, que siempre est actualizado.
w.winfo_id() devuelve un entero nico que identiieswwithin su ventana de nivel sup
erior. Que lo necesitar para la .winfo_pathname(), a continuacin.
New Mexico Tech Computer Center Tkinter 8,5 referencia 103

w.winfo_ismapped() Este mtodo devuelve true ifwis asignado, de lo contrario, devu


elve false. El widget se asigna si se ha cuadriculado (o coloca o envasados, si
est usando uno de los otros administradores geometra) en su padre, y si su padre e
st asignado, y as sucesivamente, hasta llegar a la ventana de nivel superior.
w.winfo_manager() Ifwhas cuadriculada no se (o se coloca a travs de uno de los di
rectores la otra geometra), este mtodo devuelve una cadena vaca. Se Ifwhas cuadrcula
o de lo contrario, se devuelve una cadena de nombres delante de la geometra: est
e valor ser uno de "grid" , 'pack', 'lugar', 'lienzo", o "texto".
w.winfo_name() Este mtodo returnsw nombre de relacin con su padre. Consulte la Sec
cin 5.11 , "nombres de ventana" (p. 16). Vase tambin.winfo_pathname() , a continua
cin, toind de cmo obtener un widget de nombre de la ruta.
w.winfo_parent() Returnsw de los padres de la ruta de acceso, o una cadena vaca i
fwis una ventana de nivel superior. Consulte la Seccin 5.11 , "nombres de ventana
" (p. 16) Arriba, para obtener ms informacin sobre nombres de ruta widget.
w.winfo_pathname( id,displayof = 0) Si thedisplayof argumento es falso, devuelve
la ventana nombre de la ruta de la nica identiieridin widget con la ventana prin
cipal de la aplicacin. Ifdisplayof es cierto, theidnumber speciies un widget en l
a misma ventana de nivel superior asw. Consulte la Seccin 5.11 , "nombres de vent
ana" (p. 16) Para una discusin de los nombres de ruta widget.
w.winfo_pixels(nmero) para cualquier dimensionnumber (ver Dimensiones), este mtodo
devuelve la distancia en pxeles en pantalla de w, como un entero.
w.winfo_pointerx() devuelve el mismo valor que devuelve thexcoordinate.winfo_poi
nterxy .
w.winfo_pointerxy() devuelve una tupla(x,y) que contiene las coordenadas del pun
tero del ratn relativa ventana raz del remolque.
Si el puntero del ratn no est en la misma pantalla, vuelve( -1, -1) .
w.winfo_pointery() devuelve el mismo valor que devuelve theycoordinate.winfo_poi
nterxy .
w.winfo_reqheight() Estos mtodos devuelven la altura solicitada de widgetw. Esta
es la altura mnima necesaria para que todo su contenido gestin el espacio que nece
sitan. La altura real puede ser diferente debido a las negociaciones con la geom
etra manager.
w.winfo_reqwidth() devuelve la anchura de widgetw, el ancho mnimo necesario conta
inw. Al igual que sucede con los archivos .winfo_reqheight() , la anchura real p
uede ser diferente debido a las negociaciones con la geometra manager.
w.winfo_rgb (en color) de un determinado color, este mtodo devuelve el equivalent
e color rojo-verde-azul requisitos especificados como una 3-tupla(r,g,b), donde
cada nmero es un entero en el rango [0, 65536). Por ejemplo, si el color es verd
e", este mtodo devuelve el 3-tupla(0,65535,0 ).
Para obtener ms informacin sobre cmo especificar colores, consulte la Seccin 5.3 , "
Colores" (p. 10).
w.winfo_rootx() devuelve thexcoordinates del lado izquierdo la gestin relativa ve
ntana raz principal del remolcado.
Ifwhas una frontera, este es el borde exterior de la frontera.
Tkinter 104 referencia 8.5 Nuevo Mxico Tech Computer Center

w.winfo_rooty() devuelve theycoordinate la parte superior de la ventana raz gestin


relativa matriz de remolque.
Ifwhas una frontera, este es el borde superior de la frontera.
w.winfo_screenheight() devuelve la altura de la pantalla en pxeles.
w.winfo_screenmmheight() devuelve la altura de la pantalla en milmetros.
w.winfo_screenmmwidth() devuelve el ancho de la pantalla en milmetros.
w.winfo_screenvisual() devuelve una cadena que describe el mtodo de visualizacin d
e color. Esto es por lo general de color verdadero de 16 o 24 bits muestra "pseu
docolor" de 256 pantallas en color.
w.winfo_screenwidth() devuelve el ancho de la pantalla en pxeles.
w.winfo_toplevel() devuelve la ventana de nivel superior containingw. Esa ventan
a es compatible con todos los mtodos onToplevel widgets; vase la Seccin 25, "pues i
mparten : ventana de nivel superior" (p. 95).
w.winfo_viewable() devuelve un predicado que verdaderos ifwis valor visible, es
decir, si ella y todos sus antepasados en el mismo nivel superior se asignan.
w.winfo_width() devuelve el ancho actual de pxeles. Vanse las observaciones sobre
actualizacin en geometra .winfo_geometry() , supra. Es posible que desee utilizar
el.winfo_reqwidth(), descrito anteriormente; siempre est al da.
w.winfo_x() devuelve thexcoordinate del lado izquierdo ofwrelative a su padre. I
fwhas una frontera, este es el borde exterior de la frontera.
w.winfo_y() devuelve theycoordinate del lado superior ofwrelative a su padre. If
whas una frontera, este es el borde exterior de la frontera.
27. Apariencia y normalizar la opcin base de datos
, fcil de aplicar colores, fuentes y otras opciones para los widgets cuando los c
rea. Sin embargo, si desea una gran cantidad de widgets para que tengan el mismo
color de fondo o la fuente, es tedioso para especificar cada opcin cada vez, y
es bueno dejar que el usuario anular las elecciones que su color favorito, fuent
es y otros opciones.
En consecuencia, utilizamos la idea de una opcin base de datos para configurar va
lores predeterminados de la opcin.
La aplicacin puede especificar una ile (como la norma.Xdefaults ile utilizado por
el Sistema de ventanas X) que contiene las preferencias del usuario. Puede conf
igurar su aplicacin para que lea y diga theile Tkinter para utilizar los valores
predeterminados. Vea la seccin sobre el.option_readfile() mtodo, anteriormente, en
la seccin sobre la Seccin 26, "mtodos widget Universal" (p. 97), en relacin con la
estructura de thisile.
New Mexico Tech Computer Center Tkinter 8,5 referencia 105

Su aplicacin puede especificar directamente valores predeterminados para uno o va


rios tipos de widgets con el.op- tion_add() mtodo; ver este mtodo en la Seccin 26,
"Universal widget" (p. 97).
Antes de discutir sobre cmo se establecen las opciones, consideremos el problema
de la personalizacin de la apariencia de GUIs en general. Podramos dar a cada widg
et en la aplicacin un nombre y, a continuacin, pedir al usuario que especifique cad
a una de las propiedades de cada nombre. Pero esto es complicado, y permitir tamb
in que la aplicacin difcil reconig cronograma de de si el diseador agrega nuevos wid
gets, el usuario tiene que describir cada una de las propiedades de cada nuevo w
idget.
Por lo tanto, la opcin base de datos permite al programador y al usuario especifi
car patrones generales que describe widgets para conigure.
Estos modelos funcionan con los nombres de los widgets, pero los widgets son nom
bres de dos sistemas paralelos de nomenclatura:
a. Cada widget tiene un nombre de clase. De forma predeterminada, el nombre de l
a clase es el mismo que el constructor de la clase: "botn" en el caso de los boto

nes, de marco a una trama, y as sucesivamente. Sin embargo, puede crear nuevas cl
ases de widgets, por lo general clase hereda de stapara, y darles un nuevo nombre
de su propia creacin. Consulte la Seccin 27.1 , "Cmo nombre un widget clase" (p. 1
06) Para obtener ms informacin.
b. Tambin le puede dar cualquier widget un nombre de instancia. El nombre predete
rminado de un widget es, por lo general, un nmero sin sentido (vase la seccin 5.11
, "nombres de ventana" (p. 16)). Sin embargo, al igual que con las clases widge
t, puede asignar un nombre a cualquier widget. Consulte la seccin 27.2 , "Cmo asig
nar un nombre a widget instancia" (p. 107) Para obtener ms informacin.
Cada widget en todo tipo de aplicaciones, por lo tanto tiene dos jerarquas de nom
bres de jerarqua el nombre de la clase y el nombre de la instancia jerrquica. Por
ejemplo, un botn integrado en un widget de texto que es en s mismo em camas en un
marco tendra la clase hierarchyFrame.Text.Button . Tambin puede haber una instanci
a jerarqua algo como.mainframe.texto del mensaje.panicButton si lo llama todas la
s instancias.
El punto inicial de la ventana raz; vase la seccin 5.11 , "nombres de ventana" (p.
16) Para obtener ms informacin acerca de la ventana- nombres de ruta.
La opcin base de datos mecanismo puede hacer uso de cualquiera de las clases nomb
res o nombres de instancia en deining opciones, para que usted pueda hacer las o
pciones se aplican a clases enteras (por ejemplo, todos los botones tienen un fo
ndo azul) o speciic casos (por ejemplo, el botn de pnico tiene letras rojas). Des
pus de examinar cmo nombre clases e instancias, en la Seccin 27.3 , "Recurso requis
itos especificados lneas" (p. 107), hablaremos de cmo las opciones base funciona d
e verdad.
27.1 . Cmo asignar un nombre a una clase widget
Por ejemplo, supongamos que thatJukebox es un nuevo widget clase que usted ha cr
eado. Probablemente, es mejor tener nuevo widget clases heredan de stapara clase
Tkinter, de manera que acta como un marco y puede ar- otros widgets, como etiquet
as, entradas, y los botones dentro de ella.
Que establezca el nuevo widget de nombre de la clase al pasar el nombre como the
class_ opcin para el padre constructor en el nuevo constructor de la clase. Este
es un fragmento del cdigo que deines la nueva clase:
classJukebox(tk.Frame):
def__init__(self, master):
"'Constructor fortheJukeboxclass "' tk.Frame.__INIT__(self, master,class_= 'Juke
box') self.__createWidgets() ...
Tkinter 106 referencia 8.5 Nuevo Mxico Tech Computer Center

27,2 . Cmo asignar un nombre a una instancia widget


para dar un nombre de instancia a un speciic widget en la aplicacin, establezca e
se widget'sname opcin a una cadena que contiene el nombre.
Aqu tenemos un ejemplo de un nombre de instancia. Supongamos que estamos creando
varios botones en una aplicacin, y que desea uno de los botones para tener un nom
bre de instancia ofpanicButton . La llamada al constructor podra tener este aspec
to:
self.tk =pnico.Button(self, name= 'panicButton", texto= 'Pnico', ... )
27.3 . Especificacin de Recursos lneas
cada una de las lneas de una opcin ile speciies el valor de una o ms de las opcione
s en uno o ms aplicaciones y tiene uno de los siguientes formatos:
appoption-patrn: valor de la opcin patrn: valor
la segunda forma establece las opciones para todas las aplicaciones. ; La mera f
orma establece las opciones slo cuando el nombre de la aplicacin matchesapp
Por ejemplo, si la aplicacin se llama xparrot, una lnea del formulario
xparrot * antecedentes: verde lima
establece allbackground xparrot opciones en la aplicacin de color verde lima. (Ut
ilice la opcin de nombre de la lnea de comandos al iniciar su aplicacin para establ
ecer el nombre de'xparrot' .)

Theoption de parte tiene esta sintaxis:


{{*|.}NAME} ... la opcin
, es decir, cada opcin en trminos de patrn es una lista de cero o ms nombres, cada u
no de los cuales est precedido por un asterisco o perodo. El ltimo nombre en la ser
ie es el nombre de la opcin. Cada uno del resto de los nombres pueden ser:
el nombre de la clase widget (mayscula), o el nombre de la instancia (o minscula).
La forma en que la opcin de trabajo es un poco complicado. Empecemos con un ejemp
lo sencillo:
* font:veces24
Esta lnea dice que allfont opciones para 24 puntos. * Se denomina los enlaces smbo
lo, y significa que esta opcin modelo se aplica a cualquier opcin anyfont en cualq
uier aplicacin.
Compare este ejemplo:
* Lista.fuente: lucidatypewriter 14
El perodo betweenListbox andfont se llama la fuerte unin smbolo, y eso significa qu
e esta regla se aplica slo tofont opciones para widgets en classListbox .
Como otro ejemplo, supongamos que su aplicacin xparrot tiene instancias de widget
s de classJukebox . Con el fin de establecer un color de fondo predeterminado pa
ra todos los widgets de que classJukebox , usted podra poner una lnea en su option
sile como esta:
Nuevo Mxico Tech Computer Center Tkinter 8,5

xparrot referencia 107 * Jukebox * antecedentes: papaya claro


el enlace ( * ) smbolo betweenJukebox andbackground hace esta regla aplica a cual
quier opcin de fondo de cualquier widget dentro de cualquier parte aJukebox . Com
pare esta opcin lnea:
xparrot * Jukebox.background: Blanco navajo
Esta regla se aplicar a la trama que constituyen theJukebox widget, pero debido a
la fuerte de smbolos que no se aplican a los widgets que estn dentro theJukebox w
idget.
En la siguiente seccin veremos cmo Tkinter situaron exactamente qu valor de la opcin
de utilizar si hay varios requisitos especificados lneas de recursos que se apli
can.
27.4 . Normas de recursos
cuando se crea un widget y no se especifica un valor para una opcin, y dos o ms re
cursos especificaciones aplicables a esa opcin, el ms speciic aplica.
Por ejemplo, supongamos que su optionsile ha estas dos lneas:
* antecedentes: verde lima * Lista * fondo: Blanco floral
especificaciones aplicables tanto a rock androll" produjo en opcin aListbox widge
t, pero la segunda opcin es ms speciic, por lo que ganar.
En general, los nombres de un recurso requisitos especificados son una secuencia
o nombre de instancia. Los nombres de clase estn ordenados de la n1, el ms alto d
e n2,n3,... ,owhere eachniis una clase del nivel ms bajo, andois el nombre de una
opcin.
Sin embargo, cuando Tkinter es la creacin de un widget, todo lo que tiene es el n
ombre de la clase y el nombre de la instancia de ese widget.
Aqu estn las reglas de precedencia para especificaciones de recursos:
1. El nombre de la opcin debe coincidir con theopart de theoption-patrn . Por ejem
plo, si la regla es
xparrot * indicadorde: 0
este slo coincidir con opciones namedindicatoron .
2. El operador ( .) es ms flojo que el speciic vinculante operador ( * ). Por ej
emplo, una lnea de * Button.font es algo ms que una lnea speciic de Botn * * font .
3. Las referencias a las instancias ms speciic de referencias a las clases. Por e
jemplo, si usted tiene un botn cuyo nombre de instancia ispanicButton , una regla
para * * font panicButton speciic es ms que una regla de Botn * * font .
4. Una regla con ms niveles es ms speciic. Por ejemplo, una regla de Botn * * font

es algo ms que una regla speciic para * fuente .


5. Si dos reglas tienen el mismo nmero de niveles, los nombres en la lista anteri
ormente son ms speciic nombres que ms tarde.
Por ejemplo, una regla forxparrot * font es algo ms que una regla speciic de Botn
* * font .
28. Ttk: temticas
a partir de los Conocimientos Tradicionales widgets 8.5 , el mdulo ttk. Este mdulo
sustituye muchas (pero no todas) de las mquinas originales Tkinter. Utilice este
mdulo para obtener estas ventajas:
8,5 Tkinter referencia 108 Nuevo Mxico Tech Computer Center

Plataforma speciic apariencia. En las versiones anteriores los Conocimientos Tra


dicionales 8.5 , uno de los ms frecuentes las quejas sobre los Conocimientos Trad
icionales ap de embellecimiento fue que no se ajusten al estilo de las distintas
plataformas.
El ttk mdulo le permite crear su aplicacin de una manera genrica, sin embargo, su a
plicacin puede verse como una aplicacin de Windows en Windows, como una aplicacin b
ajo MacOS MacOS, etctera, sin ningn cambio en el programa.
Cada una de las posibles diferentes aspecto est representado por un nombre ttk te
ma. Por ejemplo, theclassic tema le da la apariencia del original Tkinter widget
s se describe en las secciones anteriores.
Simpliication y generalizacin de conductas speciic widget. Tkinter bsicos en el mu
ndo, hay un montn de widget opciones que especifican cmo debe el widget aspecto o
el comportamiento en funcin de las diversas condi- ciones.
Por ejemplo, thetk.widget de botn tiene varios diferentes opciones para controlar
el color del fondo (texto).
Theactiveforeground opcin de color se aplica cuando el cursor est sobre el botn.
Thedisabledforeground color se utiliza cuando el widget est desactivado.
El widget tendr theforeground color cuando las dems condiciones no se aplican.
El ttk mdulo se contrae un montn de estos casos especiales en un simple sistema de
dos fases:
Cada widget tiene un nmero de diferentes estados, y cada estado puede ser activad
o o de forma independiente de los dems. Ejemplos de estados son:deshabilitado act
ivo , andfocus .
Se puede configurar un mapa que speciies estilo que algunas de las opciones se e
stablece en ciertos valores en funcin de algn estado o alguna combinacin de los est
ados de widget.
Para utilizar ttk, tendr que saber estas cosas.
Seccin 28.1 , "Importar ttk" (p. 109): Configurar el programa para que utilice la
ttk.
Seccin 28.2 , "El ttk widget set" (p. 110): La nueva y sustituido ttk widgets.
En la Seccin 47, "personalizar y crear ttk temas y estilos" (p. 146).
28.1 . Importar ttk
hay diferentes formas de importar el mdulo ttk.
Si usted prefiere que todos los widgets y otras caractersticas de Tkinter y ttk e
star en el espacio de nombre global, utilice este formulario de importacin:
fromTkinterimport fromttkimport * *
es importante hacer estos dos importaciones en este orden, para que todos los ti
pos de widget ttk sustituir el equivalente widgets de Tkinter. Por ejemplo, todo
s los widgets yourButton de ttk y no Tkinter.
En las aplicaciones ms complejas, en las que se utilizan ms de un mdulo importado,
puede mejorar en gran medida la legibilidad del cdigo si seguro higiene nombres:
importar todos los mdulos, utilizando el "importmodulename " sintaxis. Esto requi
ere un poco ms al escribir, sino que tiene la gran ventaja de que se puede ver un
a referencia a algo, contar de donde viene.
Recomendamos esta forma de importacin:

As que despus de este importttk importacin,ttk.Etiqueta theLabel widget es construc


tor,ttk.Button es unbotn , y as sucesivamente.
New Mexico Tech Computer Center Tkinter 8,5 referencia 109

si necesita hacer referencia a los elementos del mdulo Tkinter, se encuentra disp
onible asttk.Tkinter . Por ejemplo, el cdigo del delimitador de "noreste" isttk.T
kinter.NE .
En su lugar, puede importar Tkinter por separado de esta manera:
importTkinterastk
despus de esta forma de importacin, el cdigo de "noreste" istk.NE .
28.2 . El ttk
ttk widget El mdulo contiene diferentes versiones de la mayora de los widgets Tkin
ter estndar y de unos nuevos.
Estos widgets sustituir las de Tkinter del mismo nombre:
En la Seccin 29, "ttk.Button" (p. 110).
Seccin 30, "ttk.Will Be Punished" (p. 112).
En la Seccin 32, "ttk.Entrada " (p. 116).
En la Seccin 33, "ttk.Frame" (p. 118).
Seccin 34, "ttk.Label " (p. 119).
Seccin 35, "ttk.LabelFrame " (p. 122).
Seccin 36, "ttk.Menubutton " (p. 124).
En la Seccin 38, "ttk.PanedWindow " (p. 129).
En la Seccin 40, "ttk.radiobutton " (p. 131).
En la Seccin 41, "ttk.Escala " (p. 133).
En la Seccin 42, "ttk.scrollbar " (p. 135).
Estos widgets son nuevos y speciic de ttk:
En la Seccin 31, "ttk.Combobox" (p. 115).
En la Seccin 37, "ttk.porttil" (p. 126).
En la Seccin 39, "ttk.Progressbar " (p. 130).
Seccin 43, "ttk.Separator" (p. 137).
29. TTK.Button
Este widget es el ttk versin de la Seccin 7, "elbotn widget" (p. 18). Para crear u
n ttk.widget de botn:
w=ttk.Button( parent,option=value,...)
Aqu estn las opciones para el ttk.widget de botn. Compararlos con los Tkinter versin
indicado en la Seccin 7, "elbotn widget" (p. 18).
Tabla 35: ttk.opciones del botn
widget class_ El nombre de la clase. Esto puede ser propsitos especi cos cuando el
widget se crea, pero no se puede modificar ms adelante. Para obtener una explica
cin del widget clases, consulte la Seccin 27, "estandarizacin" (p. 105),
mando una funcin que se llama cuando se pulsa el botn.
compoundIf bothimage y texto que usted proporcione opciones opcin thecompound spe
ciies la posicin de la imagen respecto al texto. El valor puede betk.TOP (imagen
anterior texto), tk.INFERIOR (imagen abajo el texto), tk.IZQUIERDA (imagen a la
izquierda del texto), o los conocimientos tradicionales. (imagen a la derecha de
l texto).
Tkinter 110 referencia 8.5 Nuevo Mxico Tech Computer Center

cuando se proporciona bothimage y texto opciones, pero no especifica acompound o


pcin, aparecer la imagen y el texto no se.
cursor El cursor que aparece cuando el ratn se encuentra sobre el botn; consulte l
a Seccin 5.8 , "Cursores" (p. 13).
imagen, una imagen que aparece en el botn; consulte la Seccin 5.9 , "Imgenes" (p. 1
4).

estilo el estilo que se utilizar en esta botn; vase la Seccin 49, "Uso y costumbretilateral ttk estilos" (p. 147).
takefocus De forma predeterminada, el ttk.Button se incluirn en el enfoque transv
ersal; vase la Seccin 53, "Focus:
enrutamiento entrada de teclado" (p. 155). Para quitar el widget del enfoque tr
ansversal, uso takefocus=False . El
texto El texto que aparece en el botn, como una cadena.
textvariable una variable que controla el texto que aparece en el botn; vase la Se
ccin 52, "variables de Control: los valores que sustentan los widgets" (p. 153),
hacer hincapi en esto, si esta opcin tiene un valor positivo, un subrayado aparece
rn bajo el carc- ter formal en la posicin n.
anchura Si la etiqueta es texto, esta opcin speciies la anchura absoluta del rea d
e texto en el botn, como un nmero de caracteres; la anchura es que nmero multiplica
do por el ancho promedio de cada uno de los personajes de la fuente actual. Para
las etiquetas de imagen, esta opcin se ignora. La opcin puede ser tambin conigured
en un estilo.
Estas opciones del widget TkinterButton no son compatibles con el ttk.Button con
structor:
Cuadro 36. No TkinterButton opciones de ttk.Button
activebackground utilizar un estilo rock androll" produjo mapa opcin de control;
vase la seccin 50.2 , "ttk mapas: cambios en el aspecto dinmico" (p. 151).
activeforeground usar un estilo mapa de control opcin theforeground
ancla Conigure esta opcin con un estilo; vase la Seccin 49, "Uso y personalizacin de
ttk estilos" (p. 147). Utilice esta opcin para especificar la posicin del texto
cuando la opcin ancho asigna ms espacio horizontal.
Por ejemplo, si especifica optionswidth=20 andcompound=tk.justo en un botn que se
muestra tanto el texto como y la imagen, y un estilo que speciies anchor=tk.E (
este), la imagen ser en el extremo derecho del espacio, con el texto a la izquier
da.
Cuando el botn se muestra una imagen, pero no hay texto, esta opcin se ignora
antecedentes orbg Conigure opcin rock androll" produjo un estilo. No se admiten T
hebgabbreviation .
bitmap no es compatible.
borderwidth orbd Conigure theborderwidth opcin utilizando un estilo. Thebdabbrevi
ation no es compatible.
cursor El cursor que aparece cuando el ratn se encuentra sobre el botn; vase la sec
cin 5.8 , "Cursores" (p. 13).
por defecto no es compatible; vase la seccin 50.2 , "ttk mapas: cambios en el aspe
cto dinmico" (p. 151).
disabledforeground usar un estilo mapa de theforeground opcin; vase la seccin 50.2
, "ttk mapas:
cambios en el aspecto dinmico" (p. 151).
New Mexico Tech Computer Center Tkinter 8,5 referencia 111

font Conigure esta opcin con un estilo.


primer plano orfg Conigure esta opcin con un estilo de
altura no es compatible.
highlightback- para controlar el color de los resaltar cuando el botn no tiene el
foco, suelo usar un estilo mapa thehighlightcolor opcin de control; vase la seccin
50.2 , "ttk mapas: cambios en el aspecto dinmico" (p. 151).
highlightcolor puede especificar el foco predeterminado color de resaltado por e
sta opcin en un estilo. Tambin puede controlar el enfoque color de resaltado con u
n estilo mapa.
highlightthickness Conigure esta opcin con un estilo. Esta opcin puede no funciona
r en todos los temas.
justificar si acumulacin delcampo contiene newline ( ' \n' ) caracteres, el texto
puede ocupar varias lneas en el botn. Thejustify opcin controla cmo cada lnea est en

posicin horizontal. Conigure esta opcin con un estilo; valores pueden betk.IZQUIER
DA , tk.CENTRO , ortk.DERECHO de las lneas que estn alineados a la izquierda, cent
rada o derecha alineados, respectivamente.
overreliefUse un estilo mapa therelief opcin de control; vase la seccin 50.2 , "ttk
mapas: cambios en el aspecto dinmico" (p. 151),
no admite padx.
pady no compatible.
socorro Conigure esta opcin con un estilo; vase la Seccin 49, "Uso y personalizacin
de ttk estilos" (p. 147),
no admite repeatdelay.
intervalo de repeticin no es compatible.
estado de ttk, no existe la opcin con este nombre. El mecanismo de estado ha sido
gen- eralized; vase la seccin 50.2 , "ttk mapas: cambios en el aspecto dinmico" (p
. 151).
wraplengthIf utiliza un estilo con esta opcin en algunas de las dimensiones, acum
ulacin delcampo sern cortadas en pedacitos no ms de esa dimensin.
Mtodos de ttk.Botn se incluyen todas las que se describen en la Seccin 46, "Mtodos c
omunes a todos ttk- obtiene" (p. 145), adems de:
.invoke() llama al botn"scommand devolucin de llamada, y devuelve lo que devuelve.
No tiene efecto si el botn est desactivado o no hay devolucin de llamada.
El flash() mtodo ofTkinter.Button no es compatible con el ttk.widget de botn.
30. TTK.Botn
Este widget es el ttk versin de la Seccin 9, el botn "widget" (p. 38). Para crear
un "ttk.Botn widget como el hijo de una givenparent widget:
w=ttk.Will Be Punished( parent,option=value,...)
Aqu estn las opciones para el ttk.Botn widget. Compararlos con los Tkinter versin in
dicado en la Seccin 7, "elbotn widget" (p. 18).
Tkinter 112 referencia 8.5 Nuevo Mxico Tech Computer Center

Tabla 37. ttk.Botn opciones


class_ El widget nombre de clase. Esto puede ser propsitos especi cos cuando el wi
dget se crea, pero no se puede modificar ms adelante. Para obtener una explicacin
del widget clases, consulte la Seccin 27, "estandarizacin" (p. 105).
mandatoa funcin que se va a llamar cada vez que el estado de este botn cambia.
compuesto Esta opcin speciies la posicin relativa de la imagen con respecto al tex
to cuando se especifica tanto. El valor puede betk.TOP (imagen anterior texto),
tk.INFERIOR (imagen abajo el texto), tk.IZQUIERDA (imagen a la izquierda del tex
to), ortk.DERECHA (imagen a la derecha del texto). Si usted bothimage y texto o
pciones, pero no especifica un valor para el compuesto, slo aparecer la imagen.
cursor El cursor que aparece cuando el ratn se encuentra sobre el botn; vase la sec
cin 5.8 , "Cursores" (p. 13).
imagen, una imagen que aparece en el botn; vase la seccin 5.9 , "Imgenes" (p. 14).
offvalue De forma predeterminada, cuando un botn se encuentra en el de (sin marca
) estado, el valor de la asso- ciatedvariable es 0. Puede utilizar theoffvalue p
osibilidad de especificar un valor diferente para el estado.
onvalueBy por defecto, cuando un botn se encuentra en la (marcada) estado, el val
or de la variable es 1. Puede utilizar theonvalue posibilidad de especificar un
valor diferente para el estado.
estilo el estilo que se utilizar en este botn representacin; vase la Seccin 49, "Uso
y costumbre eamat ttk estilos" (p. 147).
takefocus De forma predeterminada, el ttk.Will Be Punished se incluirn en el enfo
que transversal; vase la Seccin 53, "Focus: enrutamiento entrada de teclado" (p. 1
55). Para quitar el widget del enfoque transversal, usetakefocus=False . El
texto El texto que aparecer en el botn, como una cadena.
textvariable una variable que controla el texto que aparece en el botn; vase la Se
ccin 52, "variables de Control: los valores que sustentan los widgets" (p. 153),
hacer hincapi en esto, si esta opcin tiene un valor positivo, un subrayado aparece

r en acumulacin delcampo carcter en la posicin n.


variable una variable de control que realiza un seguimiento de la situacin actual
del botn; vase la Seccin 52, "variables de Control: los valores que sustentan los
widgets" (p. 153). Normalmente se utiliza una IntVar aqu, y la de y sobre los va
lores son 0 y 1, respectivamente. Sin embargo, se puede utilizar un tipo de vari
able de control diferentes, y especificar opciones theoffvalue andonvalue con lo
s valores de ese tipo.
anchura Utilice esta opcin para especificar aixed ancho o una anchura mnima. El va
lor es propsitos especi cos en caracteres; un valor positivo establece aixed ancho
promedio de que muchos personajes, mientras un ancho negativo establece una anc
hura mnima.
Por ejemplo, si un carcter promedio en la fuente seleccionada es de 10 pxeles de a
ncho, la opcin width=8 har que el texto de la etiqueta exactamente 80 pxeles de anc
ho; optionwidth=-8 utilizar 80 pxeles o la longitud del texto, el que sea mayor.
Tambin puede especificar awidth valor en un estilo asociado. Si los valores son p
ropsitos especi cos tanto en el widget llamado constructor y en el estilo, el prim
ero tiene prioridad.
Estas opciones del widget TkinterCheckbutton no son compatibles con el ttk.widge
t Botn constructor:
Nuevo Mxico Tech Computer Center Tkinter 8,5 referencia 113

Tabla 38. No TkinterCheckbutton opciones de ttk.Will Be Punished


activebackground utilizar un estilo rock androll" produjo mapa opcin de control;
vase la seccin 50.2 , "ttk mapas: cambios en el aspecto dinmico" (p. 151).
activeforeground usar un estilo mapa de control opcin theforeground
ancla Conigure esta opcin con un estilo; vase la Seccin 49, "Uso y personalizacin de
ttk estilos" (p. 147). Utilice esta opcin para especificar la posicin del texto
cuando thewidth opcin asigna ms espacio horizontal.
Por ejemplo, si especifica optionswidth=20 andcompound=tk.con un botn que muestra
texto y y la imagen, as como un estilo que speciies anchor=tk.E (este), la image
n ser en el extremo del lado derecho del espacio, con el texto debajo.
Cuando un botn muestra una imagen pero no se muestra ningn texto, esta opcin se ign
ora
antecedentes orbg Conigure opcin rock androll" produjo un estilo. No se admiten T
hebgabbreviation .
bitmap no es compatible.
borderwidth orbd Conigure esta opcin con un estilo.
disabledforeground usar un estilo mapa de theforeground opcin; vase la seccin 50.2
, "ttk mapas: cambios en el aspecto dinmico" (p. 151).
fuente Conigure esta opcin con un estilo.
primer plano orfg Conigure esta opcin con un estilo.
altura no compatible.
highlightbackground para controlar el color de los resaltar cuando el botn no tie
ne el foco, usar un estilo mapa thehighlightcolor opcin de control; vase la seccin
50.2 , "ttk mapas: cambios en el aspecto dinmico" (p. 151).
highlightcolor puede especificar el foco predeterminado color de resaltado por e
sta opcin en un estilo. Tambin puede controlar el enfoque color de resaltado con u
n estilo mapa.
highlightthickness Conigure esta opcin con un estilo. Esta opcin puede no funciona
r en todos los temas.
indicadorde no compatible.
justificar la realizacin de controles cmo varias lneas estn colocadas horizontalment
e respecto de los otros. Conigure esta opcin con un estilo; valores pueden betk.I
ZQUIERDA , tk.CENTRO , ortk.DERECHO de alineado a la izquierda, centrado o aline
ado a la derecha, respectivamente.
offrelief no compatible.
overreliefUse un estilo mapa therelief opcin de control; vase la seccin 50.2 , "ttk

mapas: cambios en el aspecto dinmico" (p. 151),


no admite padx.
pady no admite
Uso de socorro a un estilo mapa therelief opcin de control; vase la seccin 50.2 , "
ttk estilo mapas: cambios en el aspecto dinmico" (p. 151).
selectcolor no compatible.
selectimage no compatible.
Tkinter 114 referencia 8.5 Nuevo Mxico Tech Computer Center

estado De ttk, no hay opcin con este nombre. El mecanismo de estado se ha general
izado; vase la seccin 50.2 , "ttk estilo mapas: cambios en el aspecto dinmico" (p.
151).
wraplengthIf utiliza un estilo que tiene esta opcin configurada en alguna medida,
acumulacin delcampo ser cortada en trozos no ms de esa dimensin.
Mtodos de ttk.Botn incluir todos los descritos en la Seccin 46, "Mtodos comunes a to
dos ttk widgets" (p. 145), adems de:
.invoke() Este mtodo cambia el estado del botn. Si hay un comando (u otra cosa dev
olucin de llamada, se pide que la funcin de retrollamada y devuelve el valor devue
lto de devolucin.
No se admiten los siguientes mtodos de la Tkinter Botn widget: .cancelar() , .flas
h() , .select() , y .toggle() . Para cambiar el estado de un botn de control de p
rograma, utilice el.set() del asociado controlvariable .
31. Ttk.combobox
Este widget es una combinacin de un y un men desplegable. En la aplicacin, podr ver
el habitual rea de entrada de texto, con una flecha que seala hacia abajo. Cuando
el usuario hace clic en la flecha, un men desplegable aparece. Si el usuario hace
clic en una de ellas, esa opcin reemplaza el contenido actual de la entrada.
Sin embargo, el usuario puede escribir texto directamente en la entrada (cuando
tiene el foco), o editar el texto actual.
Para crear un widget ttk.Combobox como el hijo de un givenparent widget:
w=ttk.Combobox( parent,option=value,...) Opciones:
Tabla 39: opciones ttk.Combobox
class_ El widget nombre de clase. Esto puede ser propsitos especi cos cuando el wi
dget se crea, pero no se puede modificar ms adelante. Para obtener una explicacin
del widget clases, consulte la Seccin 27, "estandarizacin" (p. 105).
cursor El cursor que aparece cuando el ratn se encuentra sobre el botn; vase Sec- 5
,8 , "Cursores" (p. 13),
exportselection De forma predeterminada, si selecciona texto en un widget, se ex
portan automticamente al portapapeles. Para evitar esta exportacin, useexportselec
tion=0 .
altura utilice esta opcin para especificar el nmero mximo de filas que aparecern en
el men desplegable; el valor predeterminado es 20. Si hay morevalues de este nmero
, el men desplegable, se incluyen automticamente una barra de desplazamiento verti
cal.
justificar esta opcin speciies cmo el texto se colocar en el rea de entrada cuando n
o completelyill la zona. Los valores pueden betk.IZQUIERDA a justificacin a la iz
quierda; los conocimientos tradicionales.en el centro; ortk.DERECHO a derecho de
justificar.
postcommand Usted puede utilizar esta opcin para proporcionar una funcin de devolu
cin de llamada que se invoca cuando el usuario hace clic en la flecha hacia abajo
. Esta devolucin puede cambiar thevalues opcin; si es as, los cambios aparecern en e
l men desplegable
estilo el estilo que se utilizar en la representacin este botn; vase la Seccin 49, "U
so y personalizacin de ttk estilos" (p. 147).
New Mexico Tech Computer Center Tkinter

takefocusBy 115 referencia 8.5 por defecto, un ttk.Botn se incluirn en el enfoque


transversal; vase Sec- 53, "Focus: enrutamiento entrada de teclado" (p. 155). Pa
ra quitar el widget del enfoque transversal, usetakefocus=False .
textvariable una variable que controla el texto que aparece en el rea de entrada;
vase la Seccin 52, "variables de Control: los valores que sustentan los widgets"
(p. 153). A continuacin,
validar puede utilizar esta opcin para solicitar validacin dinmica del widget de te
xto contenido. Vase la seccin 10.2 , "Agregar validacin a un widget" (p. 45).
validatecommand puede usar esta opcin para especificar una funcin de devolucin de l
lamada que dinmicamente valida el contenido de texto de widget. Vase la seccin 10.2
, "Agregar validacin a un widget" (p. 45).
los valores Las opciones que aparecen en el men desplegable, como una secuencia d
e cadenas.
Esta opcin speciies ancho el ancho de la zona de entrada de varios personajes. La
anchura real ser este nmero de veces que el ancho promedio de un carcter en la fue
nte. El valor predeterminado es 20.
Si el widget xscrollcommand tiene asociado un desplazamiento horizontal, estable
zca esta opcin en el.mtodo de configuracin de la barra de desplazamiento.
Mtodos de ttk.Combobox incluyen todos los descritos en la Seccin 46, "Mtodos comune
s a todos ttk widgets" (p. 145), adems de todos los mtodos de los widget Tkinter s
e describe en la Seccin 10, "la mujer en el de" (p. 41), adems de:
.actual( [index]) para seleccionar uno de los elementos de thevalues opcin, pase
el ndice del elemento como argumento a este mtodo. Si no se proporciona un argumen
to, el valor devuelto es el ndice de la entrada actual texto thevalues lista, o 1 si la entrada actual texto thevalues no est en lista.
.Set(valor) Establece el texto actual en el widget tovalue .
Los estados de un widget ttk.Combobox altera su funcionamiento. A la hora de int
errogar o los estados de cambios, consulte la.estado() y.el estado() mtodos en la
Seccin 46, "Mtodos comunes a todos ttk widgets" (p. 145).
Si el widget est en thedisabled estado, ninguna accin por parte del usuario, modif
icar el contenido.
Si el widget est en estado desactivado y tambin thereadonly, el usuario puede cambi
ar el contenido mediante el men desplegable, pero no puede editar directamente el
contenido de la misma.
32. TTK.Entrada
El propsito de un widget es para permitir que el usuario introduzca o editar una
sola lnea de texto. Esta es la versin de ttk Seccin 10, "El widget" (p. 41).
Para crear un "ttk.Entrada widget como el hijo de un givenparent widget:
w=ttk.Entrada( parent,option=value,...) Opciones:
Tabla 40: ttk.las opciones de entrada
class_ El widget nombre de clase. Esto puede ser propsitos especi cos cuando el wi
dget se crea, pero no se puede modificar ms adelante. Para obtener una explicacin
del widget clases, consulte la Seccin 27, "estandarizacin" (p. 105).
Tkinter 116 referencia 8.5 Nuevo Mxico Tech Computer Center

cursor El cursor que aparece cuando el ratn se encuentra sobre el botn; vase Sec- 5
,8 , "Cursores" (p. 13),
exportselection De forma predeterminada, si selecciona texto en un widget, se ex
portan automticamente al portapapeles. Para evitar esta exportacin, useexportselec
tion=0 .
fuente, use esta opcin para especificar la fuente del texto que aparecer en el wid
get, vase la seccin 5.4 , "fuentes de tipo" (p. 10). Por razones que no son clara
s para el autor, esta opcin no puede ser propsitos especi cos con un estilo.
invalidcommand se puede establecer esta opcin en una funcin de devolucin de llamada
que se llama siempre que val, coincidiendo as con falla (es decir, cuando theval

idatecommand devuelve un 0). Consulte la Seccin 10.2 , "Agregar validacin a un wi


dget" (p. 45).
justificar esta opcin speciies cmo el texto se situar en el rea de entrada cuando no
completelyill la zona. Los valores pueden betk.IZQUIERDA a justificacin a la izq
uierda; los conocimientos tradicionales.en el centro; ortk.DERECHO a derecho de
justificar.
mostrar a protectields como las contraseas se pueden ver en la pantalla, seleccio
ne esta opcin para una cadena, whoseirst carcter ser sustituido por cada uno de los
caracteres de theield. Por ejemplo, si contiene theield sesame", pero se han sp
eciiedshow=' * ' , theield aparecer as" ****** ".
estilo el estilo que se utilizar en este botn representacin; vase la Seccin 49, "Uso
y personalizacin de ttk estilos" (p. 147).
takefocusBy forma predeterminada, un ttk.Botn se incluirn en el enfoque transversa
l; vase Sec- 53, "Focus: enrutamiento entrada de teclado" (p. 155). Para quitar
el widget del enfoque transversal, usetakefocus=False .
textvariable una variable que controla el texto que aparece en el rea de entrada;
vase la Seccin 52, "variables de Control: los valores que sustentan los widgets"
(p. 153).
validar puede usar esta opcin para especificar una funcin de devolucin de llamada q
ue dinmicamente valida el contenido de texto de widget. Vase la seccin 10.2 , "Agre
gar validacin a un widget" (p. 45).
validatecommand Vase la seccin 10.2 , "Agregar validacin a un widget" (p. 45).
los valores Las opciones que aparecen en el men desplegable, como una secuencia d
e cadenas.
Esta opcin speciies ancho el ancho de la zona de entrada de varios personajes. La
anchura real ser este nmero de veces que el ancho promedio de un carcter en la fue
nte. El valor predeterminado es 20.
Si el widget xscrollcommand tiene asociado un desplazamiento horizontal, estable
zca esta opcin en el.mtodo de configuracin de la barra de desplazamiento.
Estas opciones del widget TkinterEntry no son compatibles con el ttk.Entrada wid
get constructor:
Cuadro 41. No TkinterEntry opciones de ttk.Entrada
antecedentes orbg Conigure opcin rock androll" produjo un estilo; vase la Seccin 47
, "Personalizada y crear ttk temas y estilos" (p. 146). No se admiten Thebgabbr
eviation.
borderwidth orbd Conigure esta opcin con un estilo.
disabledbackground utilizar un estilo de rock androll" produjo mapa opcin; vase la
seccin 50.2 , "ttk mapas: cambios en el aspecto dinmico" (p. 151).
disabledforeground usar un estilo mapa de theforeground opcin; vase la seccin 50.2
, "ttk mapas: cambios en el aspecto dinmico" (p. 151).
New Mexico Tech Computer Center Tkinter 8,5 referencia

orfg Conigure 117 primer plano esta opcin con un estilo.


highlightbackground para controlar el color de los resaltar cuando el botn no tie
ne el foco, usar un estilo mapa thehighlightcolor opcin de control; vase la seccin
50.2 , "ttk mapas: cambios en el aspecto dinmico" (p. 151).
highlightcolor puede especificar el foco predeterminado color de resaltado por e
sta opcin en un estilo. Tambin puede controlar el enfoque color de resaltado con u
n estilo mapa.
highlightthickness Conigure esta opcin con un estilo. Esta opcin puede no funciona
r en todos los temas.
insertbackground no compatible.
insertborderwidth no compatible.
insertofftime no compatible.
insertontime no compatible.
insertwidthNot.
readonlybackground utilizar un estilo rock androll" produjo mapa opcin de control

; vase la seccin 50.2 , "ttk mapas: cambios en el aspecto dinmico" (p. 151).
de socorro Conigure esta opcin utilizando un estilo; vase la Seccin 47, "personaliz
ar y crear ttk temas y estilos" (p. 146).
selectbackground utilizar un estilo rock androll" produjo mapa opcin de control;
vase la seccin 50.2 , "ttk mapas: cambios en el aspecto dinmico" (p. 151).
selectborderwidth usar un estilo mapa theborderwidth opcin de control; vase la sec
cin 50.2 , "ttk mapas: cambios en el aspecto dinmico" (p. 151).
selectforeground usar un estilo mapa theforeground opcin de control; vase la seccin
50.2 , "ttk mapas: cambios en el aspecto dinmico" (p. 151).
Mtodos de ttk.Entrada incluir a todos los que se describen en la Seccin 46, "Mtodos
comunes a todos ttk- se" (p. 145), adems de todos los mtodos de los widget Tkinte
r se describe en la Seccin 10, "El-" (p. 41).
33. TTK.Frame
como el TkinterFrame widget, el ttk.Frame widget es un recipiente rectangular de
otros widgets. Widget para crear un cuadro como el hijo de un givenparent widge
t:
w=ttk.Frame(padre de familia, option=value,...) Las opciones son:
Cuadro 42. ttk.opciones de Marco
borderwidth Utilice esta opcin para especificar el ancho del elemento border; el
valor predeterminado es cero.
class_ puede proporcionar un widget nombre de clase al crear este widget. Este n
ombre puede ser utilizado para personalizar la apariencia del widget; vase la Sec
cin 27, "Estandarizacin obis- po" (p. 105). Una vez que el widget se crea el widg
et nombre de clase no puede ser cambiado.
cursor Utilice esta opcin para especificar el aspecto del cursor del ratn cuando s
e encuentra en el widget; consulte la Seccin 5.8 , "Cursores" (p. 13). El valor
por defecto (una cadena vaca) speciies que el cursor se hereda del padre widget.
Tkinter 118 referencia 8.5 Nuevo Mxico Tech Computer Center

altura Esta opcin es una dimensin que establece la altura de la trama. Si desea fo
rzar la trama a una altura speciic, llame al.grid_propagate(0) sobre el widget;
vase la seccin 4.2 , "Otra red mtodos de gestin" (p. 7).
paddingTo crear un espacio en blanco dentro de la trama y en el exterior de la f
igura los widgets, establezca esta opcin en la dimensin deseada. Por ejemplo, padd
ing= ' 0.5i" sera claramente una media pulgada de rea amplia dentro de la trama y
alrededor de la parte exterior de los widgets dentro
de estilo Speciies el alivio de la frontera; vase la seccin 5.6 , "Socorro estilos
" (p. 12). Esto no tiene efecto a menos que tambin aumento theborderwidth .
estilo Use esta opcin para especificar un nombre de estilo widget personalizado;
vase la Seccin 47, "personalizar y crear ttk temas y estilos" (p. 146).
takefocus Utilice esta opcin para especificar si el widget es visitado durante en
foque transversal; vase Sec- 53, "Focus: enrutamiento entrada de teclado" (p. 155
). Specifytakefocus=True si desea la visita a aceptar; specifytakefocus=False s
i el widget est para no aceptar. El valor predeterminado es una cadena vaca; de fo
rma predeterminada, ttk.Frame los widgets no recibe el foco del
ancho Esta opcin es una dimensin que establece el ancho del marco. Si desea forzar
la trama a una speciic ancho, llame al.grid_propagate(0) sobre el widget; vase l
a seccin 4.2 , "Otra red mtodos de gestin" (p. 7).
Estas opciones en el widget TkinterFrame no se encuentran disponibles como opcio
nes de la ttk.Frame constructor:
Cuadro 43. No TkinterFrame opciones de ttk.
fondo del marco orbg Conigure esta opcin con un estilo; vase la Seccin 47, "persona
lizar y crear ttk temas y estilos" (p. 146).
highlightbackground para controlar el color de resaltado del foco cuando la tram
a no tiene el foco, utilice un estilo de control mapa thehighlightcolor opcin; co
nsulte Seccin 50.2 , "ttk mapas: cambios en el aspecto dinmico" (p. 151).
highlightcolor puede especificar el foco predeterminado color de resaltado por e

sta opcin en un estilo. Tambin puede controlar el enfoque color de resaltado con u
n estilo mapa.
highlightthickness Conigure esta opcin con un estilo. Esta opcin puede no funciona
r en todos los temas.
padx no est soportado.
pady no compatible.
34. TTK.Etiqueta
El propsito de este widget es para mostrar el texto, una imagen o ambos. Normalme
nte, el contenido es esttico, pero el programa puede cambiar el texto o la imagen
.
Para crear un "ttk.Etiqueta widget como el hijo de un givenparent widget:
w=ttk.Etiqueta( parent,option=value,...) Las opciones incluyen:
Cuadro 44. ttk.
anclaje Etiqueta opciones si el texto y/o imagen son ms pequeos que los speciiedwi
dth , puede utilizar la opcin de anclaje para especificar el lugar donde colocarl
as:tk.W ,tk.CENTRO , ortk.E
Nuevo Mxico Tech Computer Center Tkinter 8,5 referencia 119

a la izquierda, centrada o alineacin derecha, respectivamente. Tambin puede especi


ficar esta opcin con un estilo de
fondo Utilice esta opcin para establecer el color de fondo. Tambin puede especific
ar esta opcin con un estilo.
borderwidth Para agregar un borde alrededor de la etiqueta, establezca esta opcin
a la medida de anchura. Tambin puede especificar esta opcin con un estilo.
class_ puede proporcionar un widget nombre de clase cuando se crea este widget.
Este nombre puede ser utilizado para personalizar la apariencia del widget; vase
la Seccin 27, "Standardiz- apariencia" (p. 105). Una vez que el widget se crea e
l widget nombre de clase no puede ser cambiado,
si se proporcionan opciones bothtext andimage, thecompound opcin speciies cmo most
rarlas.
'Inferior' Mostrar la imagen debajo del texto.
'Imagen' Mostrar slo la imagen, no el texto.
'Izquierda' Mostrar la imagen a la izquierda del texto.
"Ninguno" mostrar la imagen si hay uno, de lo contrario mostrar el texto. Este e
s el valor predeterminado.
'Derecho' en la pantalla la imagen a la derecha del texto.
'Texto' en la pantalla el texto, no de la imagen.
'Top'Mostrar la imagen de arriba el texto.
cursor Utilice esta opcin para especificar el aspecto del cursor del ratn cuando s
e encuentra en el widget; consulte la Seccin 5.8 , "Cursores" (p. 13). El valor
por defecto (una cadena vaca) speciies que el cursor se hereda del padre widget.
fuente, use esta opcin para especificar el estilo de letra para el displayedtext
. Tambin puede especificar esta opcin con un estilo.
Utilice esta opcin para especificar el color del displayedtext . Tambin puede espe
cificar esta opcin con un estilo de
imagen Esta opcin speciies una imagen o las imgenes que se muestran adems de o en l
ugar de texto. El valor debe ser una imagen como propsitos especi cos en la Seccin
5.9 , "Im- las edades" (p. 14). Ver thecompound opcin por encima de lo que suced
e cuando se oferta imagen y texto.
Puede especificar varias imgenes que aparecern en el widget en funcin del estado de
l widget (consulte la seccin 50.2 , "ttk estilo mapas: cambios en el aspecto dinmi
co" (p. 151) Para una discusin de los estados widget). Para ello, la oferta como
el valor de esta opcin un tuple(i0,s1,i1,s2,i2,...) , donde:
imagen predeterminada que se muestra en el widget.
I0es el de cada par de valores tras theirst, un estado o combinacin de estados, y
la imagen que se muestra cuando sispeciies el widget del estado coincide con i1
speciies si.

Cada estado speciier ser un estado con un solo nombre, opcionalmente precedidos
por ' ! ', o una secuencia simay de tales nombres. La!speciies que el widget no
debe estar en ese estado.
Tkinter 120 referencia 8.5 Nuevo Mxico Tech Computer Center

por ejemplo, supongamos que tenemos instancias threePhotoImage namedim1 , im2 ,


andim3 , y en la llamada a constructor theLabel este op:
self.w=ttk.Etiqueta(self, ... , image= (im1, "seleccionados", im2, ( ' !desactiv
ada", "alternate" ), im3),...)
El widget mostrar imageim2 si est seleccionada en estado. Si no es seleccionada en
estado o estado thedisabled pero es en thealternate estado, se le mostrar imagei
m3 . De lo contrario, mostrar imageim1 .
justificar si acumulacin delcampo que contiene newline ( ' \n' ) caracteres, esta
opcin speciies cmo cada lnea ser colocada horizontalmente:tk.IZQUIERDA a justificac
in a la izquierda; los conocimientos tradicionales.en el centro; ortk.DERECHO a d
erecho de justificar cada lnea. Tambin puede especificar esta opcin con un estilo.
relleno para agregar ms espacio alrededor de los cuatro lados del texto y/o image
n, establezca esta opcin en la dimensin deseada. Tambin puede especificar esta opcin
con un estilo
de juego esta opcin para un alivio para crear un estilo 3-d effect. Usted tendr qu
e aumentar theborderwidth para hacer este efecto. Tambin puede especificar esta o
pcin con un estilo
estilo Utilice esta opcin para especificar un nombre de estilo widget personaliza
do; vase la Seccin 47, "Personalizada y crear ttk temas y estilos" (p. 146).
takefocusUse esta opcin para especificar si el widget es visitada durante enfoque
transversal; vase la Seccin 53, "Focus: enrutamiento entrada de teclado" (p. 155)
. Specifytakefo- cus=True si desea la visita a aceptar; specifytakefocus=False
si el widget est para no aceptar.
El valor predeterminado es una cadena vaca; de forma predeterminada, ttk.Etiqueta
los widgets no recibe el foco.
texto una cadena de texto que se mostrar en el widget.
textvariable AStringVar ejemplo (vase la Seccin 52, "variables de Control: los val
ores que sustentan los widgets" (p. 153); el texto que se muestra en el widget s
e su valor. Si tanto el texto andtextvariable son propsitos especi cos, acumulacin
delcampo opcin ser ignorado.
underlineYou puede solicitar que una de las letras de la cadena de texto se pued
e destacar de esta opcin a la posicin de la carta. Por ejemplo, el optionstext= 'S
alir' andunderline=0 pondra de relieve el P. al
utilizar esta opcin no cambia nada funcional. Si desea que la aplic- para reaccio
nar a la tecla Q o alguna variacin como control y shift-Q, tendr que configurar lo
s enlaces utilizando el sistema de eventos.
anchura para especificar aixed ancho, establezca esta opcin en el nmero de caracte
res. Para especificar un ancho mnimo, establezca esta opcin en menos el nmero de ca
racteres. Si no se especifica esta opcin, el tamao de la zona de la etiqueta ser ju
sto lo suficiente para el alojamiento de acomodar los enormes equipos el texto a
ctual y/o la imagen.
Para el texto que se muestra en una fuente proporcional, la anchura del widget s
e basa en el ancho promedio de cada uno de los personajes de la fuente, y no un
speciic nmero de caracteres.
Esta opcin tambin puede ser propsitos especi cos a travs de un estilo.
New Mexico Tech Computer Center Tkinter

wraplength 121 referencia 8.5 Si se establece esta opcin en alguna dimensin, todo
el texto se pica en lneas no ms de esta dimensin. Esta opcin tambin puede ser propsito

s especi cos a travs de un estilo.


Las siguientes opciones de la versin Tkinter ofLabel no son compatibles con la tt
k.Etiqueta constructor.
Cuadro 45. No TkinterLabel opciones de ttk.Etiqueta
activebackground utilizar un estilo rock androll" produjo mapa opcin de control;
vase la seccin 50.2 , "ttk mapas: cambios en el aspecto dinmico" (p. 151).
activeforeground usar un estilo mapa de control opcin theforeground.
mapa no es compatible.
disabledforeground usar un estilo mapa de theforeground opcin; vase la seccin 50.2
, "ttk mapas: cambios en el aspecto dinmico" (p. 151).
altura no es compatible.
highlightbackground para controlar el color de las focus resaltar cuando la etiq
ueta no tiene fo- cus, utilice un estilo de control mapa thehighlightcolor opcin;
vase Sec- 50,2 , "ttk mapas: cambios en el aspecto dinmico" (p. 151).
highlightcolor puede especificar el foco predeterminado color de resaltado por e
sta opcin en un estilo. Tambin puede controlar el enfoque color de resaltado con u
n estilo mapa.
highlightthickness Conigure esta opcin con un estilo. Esta opcin puede no funciona
r en todos los temas.
padx no est soportado.
pady no compatible.
35. TTK.LabelFrame
ttk Esta es la versin bsica de Tkinter widget se describe en la Seccin 13, "TheLabe
lFrame-" (p. 50).
Para crear un nuevo ttk.LabelFrame widget como un nio de un givenparent widget:
w=ttk.LabelFrame( parent,option=value,...) Las opciones son:
Cuadro 46. ttk.
borderwidth LabelFrame opciones Utilice esta opcin para establecer el ancho del b
orde alrededor del widget a una dimensin dada.
Esta opcin tambin se puede utilizar un estilo conigured.
class_You puede proporcionar un widget nombre de clase cuando se crea este widge
t. Este nombre puede ser utilizado para personalizar la apariencia del widget; va
se la Seccin 27, "Estandarizacin obis- po" (p. 105). Una vez que el widget se cre
a el widget nombre de clase no puede ser cambiado.
cursorUse esta opcin para especificar el aspecto del cursor del ratn cuando se enc
uentra en el widget; consulte la Seccin 5.8 , "Cursores" (p. 13). El valor por d
efecto (una cadena vaca) speciies que el cursor se hereda de los padres widget.
heightThis opcin se puede establecer en alguna dimensin para especificar la altura
del bastidor. Si no llamar al.grid_propagate(0) mtodo, se ignorar esta opcin; vase
Sec- 4.2 , "Otra red mtodos de gestin" (p. 7).
Tkinter 122 referencia 8.5 Nuevo Mxico Tech Computer Center

labelanchor Utilice esta opcin para especificar la posicin de la etiqueta en el wi


dget de frontera. La posicin predeterminada es "nw" , que coloca la etiqueta en e
l extremo izquierdo del borde superior. De las nueve posiciones posibles de la e
tiqueta, consulte la Seccin 13, "TheLabelFrame widget" (p. 50).
labelwidget en lugar de una etiqueta de texto, puede utilizar cualquier widget l
a etiqueta en un ttk.LabelFrame .
Crear algunas widgetwbut no registrarlo con el.grid(). A continuacin, crear theL
abelFrame withlabelwidget= w. Si se especifica esta opcin, as como acumulacin delca
mpo opcin, esta ltima se ignora.
Por ejemplo, si no te gusta la ms pequea y simple fuente predeterminada utilizada
para la etiqueta, se puede utilizar esta opcin para mostrar aLabel widget con la
fuente y otra aparicin de su eleccin.
paddingTo aadir espacio libre alrededor de los contenidos de este widget, estable
zca esta opcin en una dimensin. Esta opcin tambin puede ser propsitos especi cos por u
n estilo.

reliefUse esta opcin para especificar un 3-d estilo de borde; vase la seccin 5.6 ,
"Socorro estilos" (p. 12).
Es necesario especificar un nonzeroborderwidth para tal efecto. Esta opcin tambin
puede ser propsitos especi cos por un estilo
estilo Utilice esta opcin para especificar un nombre de estilo widget personaliza
do; vase la Seccin 47, "personalizar y crear ttk temas y estilos" (p. 146).
takefocus Utilice esta opcin para especificar si el widget es visitada durante en
foque transversal; vase la Seccin 53, "Focus: enrutamiento entrada de teclado" (p.
155). Specifytakefocus=True si desea la visita a aceptar; specifytakefocus=Fal
se si el widget est para no aceptar.
El valor predeterminado es una cadena vaca; de forma predeterminada, ttk.Etiqueta
los widgets no recibe el foco.
texto El valor de esta opcin es una cadena que aparecer como parte de la frontera.
subrayado puede solicitar que una de las letras de la cadena de texto se subraya
n por establecer esta opcin en la posicin de la carta. Por ejemplo, si usted speci
iedtext= 'Pnico' y underline=2 , un subrayado que aparecen bajo la "n".
Con esta opcin no cambia nada funcional. Si desea que la aplicacin a reaccionar a
la tecla Q o alguna variacin como control-shift-Q, tendr que configurar los enlace
s utilizando el sistema de eventos.
anchura Esta opcin se puede establecer en alguna medida para especificar la anchu
ra del marco. Si no llamar al.grid_propagate(0) mtodo, se ignorar esta opcin; vase l
a seccin 4.2 , "Otros mtodos de gestin grid" (p. 7).
Las siguientes opciones disponibles para el TkinterLabelFrame widget no estn disp
onibles como argumentos del constructor.
Cuadro 47. No TkinterLabelFrame opciones de ttk.LabelFrame
orbg Conigure fondo opcin rock androll" produjo un estilo; vase la Seccin 47, "Pers
onalizada y crear ttk temas y estilos" (p. 146). No se admiten Thebgabbreviatio
n.
highlightbackground para controlar el color de los theLabelFrame resaltar cuando
no tiene el foco, usar un estilo mapa thehighlightcolor opcin de control; vase la
seccin 50.2 , "ttk mapas: cambios en el aspecto dinmico" (p. 151).
highlightcolor puede especificar el foco predeterminado color de resaltado por e
sta opcin en un estilo. Tambin puede controlar el enfoque color de resaltado con u
n estilo mapa.
highlightthickness Conigure esta opcin con un estilo. Esta opcin puede no funciona
r en todos los temas.
New Mexico Tech Computer Center Tkinter 8,5 referencia 123

El ttk.LabelFrame widget es compatible con todos los mtodos descritos en la Seccin


46, "Mtodos comunes a todos ttk widgets" (p. 145).
36. TTK.Menubutton
AMenubutton widget es parte de un men desplegable que est siempre visible. Siempre
se usa en combinacin con submen widget que controla lo que aparece cuando el usua
rio hace clic en theMenubutton .
No hay ninguna versin de ttk theMenubutton widget. Utilizar el widget Tkinter se
describe en la Seccin 15, "El men widget" (p. 56).
Para crear un nuevo ttk.Menubutton widget como el hijo de someparent widget, uti
lice este constructor:
w=ttk.Menubutton( parent,option=value,...) Las opciones incluyen:
Cuadro 48. ttk.Menubutton opciones
class_ El widget nombre de clase. Esto puede ser propsitos especi cos cuando el wi
dget se crea, pero no se puede modificar ms adelante. Para obtener una explicacin
del widget clases, consulte la Seccin 27, "estandarizacin" (p. 105).
compoundIf bothimage y texto que usted proporcione opciones opcin thecompound spe
ciies la posicin de la imagen respecto al texto. El valor puede betk.TOP (imagen
anterior texto), tk.INFERIOR (imagen abajo el texto), tk.IZQUIERDA (imagen a la
izquierda del texto), o los conocimientos tradicionales. (imagen a la derecha de

l texto).
Al proporcionar opciones bothimage y texto pero no especifica acompound opcin, ap
arecer la imagen y el texto no se.
cursor El cursor que aparece cuando el ratn se encuentra sobre el botn; consulte l
a Seccin 5.8 , "Cursores" (p. 13).
direccin Esta opcin speciies la posicin donde aparece el men desplegable, en relacin
a la menubutton.
encima del men aparecer justo encima de la menubutton.
a continuacin el men aparecer justo debajo de la menubutton.
flush El men aparecer en el menubutton, de modo que el men, esquina noroeste coinci
de con el menubutton la esquina noroeste.
left(tiempo restante) se muestran slo aparecer el men a la izquierda del menubutton
. A la
derecha aparecer el men situado a la derecha del menubutton.
imagen, una imagen que aparece en el menubutton; consulte la Seccin 5.9 , "Imgenes
" (p. 14),
el men relatedMenu widget. Ver la discusin a continuacin que describe cmo establecer
esta conexin mutua.
estilo el estilo que se utilizar en esta menubutton; vase la Seccin 49, "Uso y pers
onalizacin de ttk estilos" (p. 147).
takefocus De forma predeterminada, el ttk.Menubutton se incluirn en enfoque trans
versal; vase la Seccin 53, "Focus: enrutamiento entrada de teclado" (p. 155). Par
a quitar el widget del enfoque transversal, usetakefocus=False . El
texto El texto que aparecer en el menubutton, como una cadena.
Tkinter 124 referencia 8.5 Nuevo Mxico Tech Computer Center

textvariable una variable que controla el texto que aparece en la menubutton; vas
e la Seccin 52, "variables de Control: los valores que sustentan los widgets" (p.
153),
hacer hincapi en esto, si esta opcin tiene un valor positivo, un subrayado aparece
rn bajo el carc- ter formal en la posicin n.
anchura Si la etiqueta es texto, esta opcin speciies la anchura absoluta del rea d
e texto en el botn, como un nmero de caracteres; la anchura es que nmero multiplica
do por el ancho promedio de cada uno de los personajes de la fuente actual. Para
las etiquetas de imagen, esta opcin se ignora. La opcin puede ser tambin conigured
en un estilo.
Las siguientes opciones del botn TkinterMenubutton, tal como se describe en la Se
ccin 16, "TheMenubutton widget" (p. 61), no son compatibles por ttk.Menubutton :
Tabla 49. No TkinterMenubutton opciones de ttk.Menubutton
activebackground utilizar un estilo rock androll" produjo mapa opcin de control;
vase la seccin 50.2 , "ttk mapas: cambios en el aspecto dinmico" (p. 151).
activeforeground usar un estilo mapa de control opcin theforeground
ancla Conigure esta opcin con un estilo; vase la Seccin 49, "Uso y personalizacin de
ttk estilos" (p. 147). Utilice esta opcin para especificar la posicin del texto
cuando thewidth opcin asigna ms espacio horizontal.
mapa no est soportado.
borderwidth orbd Conigure theborderwidth opcin utilizando un estilo. Thebdabbrevi
ation no es compatible.
buttonbackground no compatible.
buttoncursor no es compatible.
buttondownrelief no admite
no admite. buttonup.
disabledforeground usar un estilo mapa de theforeground opcin; vase la seccin 50.2
, "ttk estilo mapas: cambios en el aspecto dinmico" (p. 151).
fuente Conigure esta opcin con un estilo.
primer plano orfg Conigure theforeground opcin utilizando un estilo de
altura no es compatible.

highlightbackground para controlar el color de los resaltar cuando la menubutton


no tiene el foco, utilice un estilo mapa thehighlightcolor opcin de control; vase
la seccin 50.2 , "ttk mapas: cambios en el aspecto dinmico" (p. 151).
highlightcolor puede especificar el foco predeterminado color de resaltado por e
sta opcin en un estilo. Tambin puede controlar el enfoque color de resaltado con u
n estilo mapa.
highlightthickness Conigure esta opcin con un estilo.
justificar si acumulacin delcampo contiene newline ( ' \n' ) caracteres, el texto
puede ocupar varias lneas en el menubutton. Thejustify opcin controla cmo cada lnea
est en posicin horizontal. Conigure esta opcin con un estilo; valores pueden ser t
k.IZQUIERDA ,tk.CENTRO , ortk.DERECHO de las lneas que estn alineados a la izquier
da, centrado o alineado a la derecha, respectivamente.
padx no compatible.
pady no compatible.
New Mexico Tech Computer Center Tkinter 8,5 125 referencia

Conigure alivio esta opcin con un estilo; vase la Seccin 49, "Uso y personalizacin d
e ttk estilos" (p. 147).
wraplengthIf utiliza un estilo con esta opcin activada en alguna dimensin, acumula
cin delcampo sern cortadas en pedacitos no ms de esa dimensin.
37. TTK.porttil con
el fin de mediante un porttil widget es el de proporcionar un rea donde el usuario
puede seleccionar las pginas de contenido, haga clic en las pestaas en la parte s
uperior de la zona, como las que se describen a continuacin:
Cada vez que el usuario hace clic en una de estas fichas, el widget se mostrar el
panel infantil asociados a la ficha. Normalmente, cada panel ser un cuadro widge
t, aunque un panel puede ser cualquier widget.
La ficha panel de el nio que se muestra actualmente se conoce como la ficha selec
cionada.
Utilizar carretilla delporttil widget's .mtodo add() para fijar una nueva pestaa, y
de su contenido.
Otros mtodos permiten eliminar u ocultar temporalmente las fichas.
Cada pestaa tiene su propio conjunto de opciones que controlan su apariencia y co
mportamiento. Estas opciones se describen en la Tabla 51, "las opciones de la fi
cha para el ttk.widget Notebook" (p. 128).
Un nmero de los mtodos de este widget utilizar la idea de atabId para referirse a
una de las pestaas. Valores diferentes para atabId puede ser cualquiera de los si
guientes:
valores enteros hacen referencia a la posicin de la ficha: 0 ficha de theirst, 1
para el segundo y as sucesivamente.
Siempre puede consultar una ficha utilizando el nio widget.
Una cadena de la forma" @x,y"se refiere a la ficha que contiene el punto(x,y)rel
ativa al widget. Por ejemplo, la cadena " @37,0 " que especifique la ficha que c
ontiene un punto 37 pxeles desde la parte izquierda del widget, a lo largo del bo
rde superior de la ficha.
La cadena "actual" se refiere a cualquier ficha est seleccionada actualmente.
En una llamada a carretilla delporttil widget's .index(), use la cadena "final "
para determinar el nmero actual de pestaas que aparecen.
Widget para crear mediante un porttil como el hijo de someparent widget, utilice
este constructor:
w=ttk.Notebook( parent,option=value,...) Las opciones incluyen:
Cuadro 50. ttk.opciones de porttiles
class_The widget nombre de clase. Esto puede ser propsitos especi cos cuando el wi
dget se crea, pero no se puede modificar ms adelante. Para obtener una explicacin
del widget clases, consulte la Seccin 27, "estandarizacin" (p. 105).
cursorThe cursor que aparece cuando el ratn est sobre el porttil; vase la seccin 5.8
, "Cursores" (p. 13).

heightThe altura en pxeles que se va a asignar a la widget.


relleno para agregar algo ms de espacio alrededor de la parte exterior del widget
, seleccione esta opcin para que la cantidad de espacio como una dimensin
estilo el estilo que se utiliza en esta menubutton; vase la Seccin 49, "Uso y pers
onalizacin de ttk estilos" (p. 147).
Tkinter 126 referencia 8.5 Nuevo Mxico Tech Computer Center

takefocus De forma predeterminada, el ttk.porttil estar incluido en el enfoque tra


nsversal; vase la Seccin 53, "Focus:
enrutamiento entrada de teclado" (p. 155). Para quitar el widget del enfoque tr
ansversal, usetake enfoque=False .
ancho el ancho en pxeles que se asignar al widget.
Mtodos de ttk.widget Notebook incluyen todas aquellas descritas en la Seccin 46, "
Mtodos comunes a todos ttk widgets" (p. 145), adems de:
.ADD(CHILD, ** kw) Nio argumento es un widget, generalmente un cuadro , que ajust
a el contenido de uno de estos nios panel. Si el nio no es un widget de la carreti
lla delporttil paneles secundarios,nio es aadido como la siguiente pestaa disponible
, y la palabra clave argumentskwdeine la ficha opciones para el nuevo panel. Est
as opciones son deined, Tabla 51, "las opciones de la ficha para el ttk.widget N
otebook" (p. 128).
Actualmente Ifchild es un panel oculto, volver a aparecer la ficha en su antigua
posicin.
.Enable_traversal() una vez que se llame a este mtodo, algunos otros enlaces clav
e:
Control+Tabulador, seleccione la ficha despus de que el seleccionado actualmente.
Si la ltima ficha fue seleccionado, la seleccin se gira de nuevo en theirst ficha
.
Shift-Control -Tab hace lo contrario: que se desplaza a la ficha anterior, envue
lve alrededor de la ltima pestaa ficha theirst si fue seleccionado.
Puede conigure una determinada tecla de acceso rpido que directamente selecciona
una ficha. Para ello, utilice acumulacin delcampo y destacar las opciones de la f
icha para destacar uno de los personajes en cada ficha. A continuacin, el usuario
puede acceder a una ficha escribiendo Alt-xwherexis el carcter de subrayado en l
a ficha.
Si usted tiene multipleNotebook widgets en la misma aplicacin, estas caracterstica
s no funcionarn correctamente a menos que cada nio panel widget se crea con itsNot
ebook widget como el padre.
.Olvidar(nio) Este mtodo elimina permanentemente el speciiedchild del widget del c
onjunto de fichas.
.Hide(tabid) de la pestaa identiied bytabId es quitado temporalmente de la serie
de pestaas visibles de la carretilla delporttil .
Usted podr reintegrar al llamar al mtodo add() una vez ms.
.Index(tabid) para un giventabId , este mtodo devuelve el ndice numrico de la ficha
correspondiente. Hay una excepcin: si el argumento es la cadena "end", el mtodo d
evolver el nmero total de fichas.
.INSERT(WHERE,CHILD, ** kw) Este mtodo inserta el widgetchild propsitos especi cos
en la posicin bywhere , con cualquier palabra clave- plejos para describir la nue
va ficha y panel. Para las opciones de palabras clave, consulte la Tabla 51, "la
s opciones de la ficha para el ttk.widget Notebook" (p. 128).
Thewhere argumento puede ser cualquiera de los siguientes:
"fin" para colocar la nueva ficha despus de que todas las fichas existentes.
Un nio widget; en este caso, el newchild se inserta justo antes que los widget.
.Select([ tabid]) si llama a este mtodo sin un argumento, se le devolver el nombre
de la ventana del widget cuya ficha se muestra actualmente.
Para mostrar un panel de la carretilla delporttil speciic , llamar a este mtodo co
n atabId como argumento.
New Mexico Tech Computer Center Tkinter referencia 127 8,5

.tab(tabid, opcin=None, ** kw) Utilice este mtodo para establecer las opciones de
la ficha para los paneles secundarios descritos bytabId , o toind qu opciones se
han establecido para ese nio panel. La ficha opciones se describen en la Tabla 51
, "las opciones de la ficha para el ttk.widget Notebook" (p. 128).
Si llama al mtodo con ninguna palabra clave argumentos, se volver un diccionario d
e la pestaa opciones actualmente en efecto para propsitos especi cos bytagId el pan
el .
A ind el valor actual de una ficha speciic optionX, llame a este mtodo con el arg
umento de que "po-=X", y el mtodo devuelve el valor de la opcin de la ficha.
Para configurar una o ms opciones de la pestaa para que el nio se describe bytagId
, llamar a este mtodo con palabra clave argumentos. Por ejemplo, propio casino.nb
es mediante un porttil , esta llamada, cambiar el texto que se muestra en theirs
t ficha:
self.nb.tab(0, text= 'crujiente rana")
.fichas() Este mtodo devuelve una lista de los nombres de ventana de carretilla d
elporttil paneles del nio, con el fin fromirst hasta la ltima.
Aqu estn las opciones de la pestaa en el.add() y.tab() mtodos.
Tabla 51. Las opciones de la ficha para el ttk.widget Notebook
compuesto bothimage Si y texto que se mostrar en la ficha opcin thecompound specii
es cmo mostrarlas. Valores Permitidos describir la posicin de la imagen hori- zont
e al texto, y puede ser de cualquier oftk.EN RESUMEN ,tk.TOP ,tk.IZQUIERDA ,tk.,
o tk.CENTRO . Por ejemplo, compuesto=tk.IZQUIERDA, posicin de la imagen a la izq
uierda del texto.
padding Utilice esta opcin para agregar espacio adicional alrededor de los cuatro
lados del contenido del panel. El valor es una dimensin. Por ejemplo, padding= '
0.1i" agregar un 0,1
&#153; espacio alrededor de cada lado del panel contenido.
stickyUse esta opcin para especificar que el contenido del panel se encuentra si
no completamente enfermo el rea del panel de control. Los valores son los mismos
que los de thesticky argumento descrito en sec- cin 4.1 , "El.grid() mtodo" (p. 6)
. Por ejemplo, sticky=tk.E+ct.S, colocar el contenido en la parte inferior dere
cha (sureste) esquina.
imagen para hacer una imagen grfica aparecen en la ficha de una imagen como el va
lor de esta opcin.
Consulte thecompound opcin anterior para especificar las posiciones relativas ofi
mage y texto cuando se especifica tanto.
texto El texto que aparecer en la ficha.
destacar Si esta opcin tiene un valor positivo, un subrayado aparecern bajo el carc
ter en la posicin n del texto en la pestaa.
37.1 . Eventos virtuales para el ttk.widget Notebook
cada vez que la ficha seleccionada los cambios en un ttk.widget Notebook, se gen
era una " &lt; <NotebookT- abChanged>&gt; " Evento virtual; vase la seccin 54,8 ,
"eventos virtuales" (p. 165).
Tkinter 128 referencia 8.5 Nuevo Mxico Tech Computer Center

38. ttk.PanedWindow
ttk Esta es la versin de la Seccin 19, "ThePanedWindow widget" (p. 65). Para crea
r un "ttk.PanedWindow widget como el hijo de un givenparent widget:
w=ttk.PanedWindow( parent,option=value,...)
Las opciones de este constructor estn dados en la Tabla 52, "ttk.PanedWindow opci
ones" (p. 129).
Cuadro 52. ttk.PanedWindow opciones
class_The widget nombre de clase. Esto puede ser propsitos especi cos cuando el wi

dget se crea, pero no se puede modificar ms adelante. Para obtener una explicacin
del widget clases, consulte la Seccin 27, "estandarizacin" (p. 105).
cursorThe cursor que aparece cuando el ratn est sobre el botn; vase la seccin 5.8 , "
Cursores" (p. 13).
altura heightThe del widget.
orientTo pila nio widgets lado a lado, useorient=tk.HORIZONTAL . Para apilar arri
ba a abajo, useorient=tk.VERTICAL . La opcin predeterminada istk.VERTICAL .
estilo el estilo que se utilizar en la representacin este widget; vase la Seccin 49,
"Uso y personalizacin de ttk estilos" (p. 147).
takefocus De forma predeterminada, un ttk.PanedWindow no se incluirn en el enfoqu
e transversal; vase la Seccin 53, "Foco de atencin: de entrada de teclado" (p. 155)
. Para aadir el widget a centrarse travesa, utilice takefocus=True .
ancho el ancho dimensin del widget.
Estas opciones de Tkinter.PanedWindow widget no son compatibles con el ttk.Paned
Window con- structor:
Cuadro 53. No TkinterPanedWindow opciones de ttk.PanedWindow
orbg Conigure fondo opcin rock androll" produjo un estilo. No se admiten Thebgabb
reviation.
borderwidth orbdNot.
cursor El cursor que aparece cuando el ratn est sobre el widget; vase la seccin 5.8
, "Cursores" (p. 13).
handlepadNot.
handlesize no es compatible.
opaqueresize no compatible.
No compatible.
sashrelief no compatible.
sashwidthNot.
showhandle no es compatible.
Mtodos de ttk.PanedWindow incluyen todos los descritos en la Seccin 46, "Mtodos com
unes a todos ttk widgets" (p. 145), adems de:
Nuevo Mxico Tech Computer Center Tkinter 8,5 referencia 129

.add(w[ ,peso=N]) Aade un nuevo panel de la ventana, wherewis cualquier widget (p


ero normalmente un cuadro ). Si se proporciona una opcin de peso, describe el ta
mao del panel en la dimensin de apilamiento, con respecto a los dems paneles. Por e
jemplo, fororient=tk.VERTICAL , si 0 panel hasweight=1 y 1 panel hasweight=3 , i
nicialmente theirst panel tendr 1/4 de la altura y el segundo panel tendr 3/4.
.Olvidar(lo) eliminar un panel. El argumento puede ser o bien el ndice del panel,
desde cero, o si el nio widget.
.Insert(donde,w[ ,peso=N]) Aade un nuevo panewto la ventana en la posicin propsitos
especi cos bywhere , wherewhere puede ser un ndice o el panel widget antes que de
sea insertar el nuevo panel.
.Paneles() Este mtodo devuelve una lista de nio del thePanedWindow widgets.
39. TTK.Progressbar
El propsito de este widget es para tranquilizar al usuario que algo est ocurriendo
. Puede funcionar en uno de dos modos:
modo indeterminado, el widget muestra un indicador que se mueve desde el princip
io hasta el final bajo el control del programa.
Modo Inindeterminate el widget es animada por lo que el usuario va a creer que a
lgo est en curso.
En este modo, el indicador se mueve hacia adelante y hacia atrs entre los extremo
s del widget.
En cualquiera de los modos, la posicin actual del indicador tiene un valor numrico
. Puede especificar un mximo valor, y se puede establecer el valor del indicador
directamente. Tambin se puede especificar que el valor del indicador se mueve una
cantidad cada vez que un intervalo de tiempo determinado.
Para crear un nuevo ttk.Progressbar widget como el hijo de un givenparent widget

:
w=ttk.Progressbar( parent,option=value,...)
Las opciones de este constructor se presentan en la Tabla 54, "ttk.Progressbar o
pciones" (p. 130).
Tabla 54. ttk.Progressbar
widget class_The opciones nombre de clase. Esto puede ser propsitos especi cos cua
ndo el widget se crea, pero no se puede modificar ms adelante. Para obtener una e
xplicacin del widget clases, consulte la Seccin 27, "estandarizacin" (p. 105).
cursorThe cursor que aparece cuando el ratn est sobre el botn; vase la seccin 5.8 , "
Cursores" (p. 13).
lengthThe tamao del widget a lo largo de su eje largo en una dimensin
mxima del valor mximo del indicador; el valor predeterminado es 100.
Si el programa no puede mostrar fielmente el progreso relativo que este widget s
e supone para mostrar, usemode= "indeterminado". De este modo, un rectngulo rebo
ta hacia adelante y hacia atrs entre los extremos del widget una vez que utilice
el mtodo start().
Si el programa tiene alguna medida de progreso relativo, usemode= "determinante"
.
En este modo, el programa puede mover el indicador a propsitos especi cos posicin a
lo largo de la va del widget.
Tkinter 130 referencia 8.5 Nuevo Mxico Tech Computer Center

orientThis speciies opciones la orientacin: useorient=tk.HORIZONTAL ororient=tk.V


ER- TICAL .
estilo el estilo que se utilizar este widget en la representacin; vase la Seccin 49,
"Uso y personalizacin de ttk estilos" (p. 147).
takefocus De forma predeterminada, un ttk.Progressbar no se incluirn en el enfoqu
e transversal; vase la Seccin 53, "Foco de atencin: de entrada de teclado" (p. 155)
. Para aadir el widget a centrarse travesa, utilice takefocus=True .
variable Utilice esta opcin para vincular una variable de control para el widget
para que pueda obtener o establecer el valor actual del indicador.
Mtodos de ttk.Progressbar incluyen los que se describen en la Seccin 46, "Mtodos co
munes a todos ttk widgets" (p. 145) Plus:
.inicio( [intervalo]) empiece a mover el indicador everyinterval milisegundos; e
l valor predeterminado es 50ms. Cada vez, la ind adecua- se mueve como si el pas
o del mtodo.
el incremento predeterminado es 1,0 . En modo determinante, el indicador nunca s
uperar el valor de la opcin. De modo indeterminado, el indicador cambiar de direccin
y contar hacia atrs una vez que se alcanza el valor mximo. ; .Paso( [delta]) Este
mtodo aumenta el valor del indicador bydelta
.stop() Este mtodo detiene el progreso automtico que se inici mediante una llamada
al mtodo start().
40. TTK.radiobutton
Este widget es el ttk versin de la Seccin 20, "radiobutton widget" (p. 68). Para
crear un ttk.Radi- obutton widget como el hijo de un widget givenparent theoptio
n, donde los valores se indican en la Tabla 55, "ttk.radiobutton opciones" (p. 1
31):
w=ttk.radiobutton( parent,option=value,...)
Tabla 55. ttk.radiobutton opciones
class_ El widget nombre de clase. Esto puede ser propsitos especi cos cuando el wi
dget se crea, pero no se puede modificar ms adelante. Para obtener una explicacin
del widget clases, consulte la Seccin 27, "estandarizacin" (p. 105).
mandatoa funcin que se ejecutar cada vez que el estado de esta radio los cambios.
compuesto Esta opcin speciies la posicin relativa de la imagen con respecto al tex
to cuando se especifica tanto. El valor puede betk.TOP (imagen anterior texto),
tk.INFERIOR (imagen abajo el texto), tk.IZQUIERDA (imagen a la izquierda del tex
to), ortk.DERECHA (imagen a la derecha del texto). Si usted bothimage y texto o

pciones, pero no especifica un valor para el compuesto, slo aparecer la imagen.


cursor El cursor que aparece cuando el ratn est sobre el radiobutton; consulte la
Seccin 5.8 , "Cursores" (p. 13).
imagen, una imagen que aparece en la radio; consulte la Seccin 5.9 , "Imgenes" (p.
14).
estilo el estilo que se utilizar en esta radio; vase la Seccin 49, "Uso y para disea
r su propio ttk estilos" (p. 147).
New Mexico Tech Computer Center Tkinter

takefocus 131 8.5 referencia De forma predeterminada, un ttk.radiobutton se incl


uirn en el enfoque transversal; vase la Seccin 53, "Focus: enrutamiento entrada de
teclado" (p. 155). Para quitar el widget del enfoque transversal, usetakefocus=
False . El
texto El texto que aparecer al lado de la radio, como una cadena.
textvariable una variable que controla el texto que aparece en la radio; vase la
Seccin 52, "variables de Control: los valores que sustentan los widgets" (p. 153)
,
hacer hincapi en esto, si esta opcin tiene un valor positivo, un subrayado aparece
r en acumulacin delcampo carcter en la posicin n.
valor el valor asociado a esta radio. Cuando el radio es la seleccionada en el g
rupo, el valor de esta opcin se almacena en la variable de control para el grupo.
variable una variable de control que es compartida por los otros botones en el g
rupo; vase la Seccin 52, "variables de Control: los valores que sustentan los widg
ets" (p. 153). El tipo de esta variable ser el mismo que el tipo que se especifi
que para elvalor opciones para los botones en el grupo.
anchura Utilice esta opcin para especificar aixed ancho o una anchura mnima. El va
lor es propsitos especi cos en caracteres; un valor positivo establece aixed ancho
promedio de que muchos personajes, mientras un ancho negativo establece una anc
hura mnima.
Tambin puede especificar awidth valor en un estilo asociado. Si los valores son p
ropsitos especi cos tanto en el widget llamado constructor y en el estilo, el prim
ero tiene prioridad.
Estas opciones de la TkinterRadiobutton widget no son compatibles con la ttk.rad
iobutton con- structor:
Cuadro 56. ttkRadiobutton opciones no de ttk.radiobutton
activebackground utilizar un estilo rock androll" produjo mapa opcin de control;
vase la seccin 50.2 , "ttk mapas: cambios en el aspecto dinmico" (p. 151).
activeforeground usar un estilo mapa de control opcin theforeground
ancla Conigure esta opcin con un estilo; vase la Seccin 49, "Uso y personalizacin de
ttk estilos" (p. 147). Utilice esta opcin para especificar la posicin del texto
cuando thewidth opcin asigna ms espacio horizontal.
Por ejemplo, si especifica optionswidth=30 andcompound=tk.abajo de un radiobutto
n que muestra texto y y la imagen, as como un estilo que speciiesanchor=tk.W (oes
te), la imagen ser en el extremo izquierdo de la treinta y espacio de carcter, con
el texto por encima.
Cuando un radiobutton muestra una imagen pero no se muestra ningn texto, esta opc
in se ignora
antecedentes orbg Conigure opcin rock androll" produjo un estilo. No se admiten T
hebgabbreviation .
bitmap no es compatible.
borderwidth orbd Conigure esta opcin con un estilo.
disabledforeground usar un estilo mapa de theforeground opcin; vase la seccin 50.2
, "ttk mapas: cambios en el aspecto dinmico" (p. 151).
fuente Conigure esta opcin con un estilo.
primer plano orfg Conigure theforeground opcin utilizando un estilo. Thefgabbrevi
ation no es compatible.
Tkinter 132 referencia 8.5 Nuevo Mxico Tech Computer Center

no admite altura.
highlightbackground para controlar el color de los resaltar cuando la menubutton
no tiene el foco, utilice un estilo mapa thehighlightcolor opcin de control; vase
la seccin 50.2 , "ttk mapas: cambios en el aspecto dinmico" (p. 151).
highlightcolor puede especificar el foco predeterminado color de resaltado por e
sta opcin en un estilo. Tambin puede controlar el enfoque color de resaltado con u
n estilo mapa.
highlightthickness Conigure esta opcin con un estilo.
indicatoronNot.
justificar controla cmo varias lneas se colocan horizontalmente respecto de los ot
ros. Conigure esta opcin con un estilo; valores pueden betk.IZQUIERDA , tk.CENTRO
, ortk.DERECHO de alineado a la izquierda, centrado o alineado a la derecha, re
spectivamente.
offrelief no compatible.
overreliefNot.
padx no es compatible.
pady no compatible.
socorro Conigure esta opcin con un estilo.
selectcolorNot.
selectimageNot.
estado de ttk, no hay opcin con este nombre. El mecanismo de estado se ha general
izado; vase la seccin 50.2 , "ttk estilo mapas: cambios en el aspecto dinmico" (p.
151).
wraplengthIf utiliza un estilo que tiene esta opcin configurada en alguna medida,
acumulacin delcampo ser cortada en trozos no ms de esa dimensin.
Mtodos de ttk.radiobutton son todos aquellos descritos en la Seccin 46, "Mtodos com
unes a todos ttk widgets" (p. 145), adems de:
.invoke() cuando se llama a este mtodo en un ttk.radiobutton , el resultado es el
mismo que si el usuario hace clic sobre el mismo: el indicador est establecido y
el associatedvariable est configurado en la opcin svalue radiobutton'. Si hay un
comando asociado a esta radio, que se llama, y el.invoke() mtodo devuelve lo que
la funcin devolvi; de lo contrario, returnsNone .
41. TTK.
Esta es la escala ttk versin de la Seccin 21, "TheScale widget" (p. 71). Para cre
ar un widget ttk.Escala como el hijo de un widget givenparent theoption, donde l
os valores se indican en la Tabla 57, "ttk.Escala op- ciones" (p. 133):
w=ttk.Escala( parent,option=value,...) en el
Cuadro 57. ttk.las opciones de escala
class_ El widget nombre de clase. Esto puede ser propsitos especi cos cuando el wi
dget se crea, pero no se puede modificar ms adelante. Para obtener una explicacin
del widget clases, consulte la Seccin 27, "estandarizacin" (p. 105).
New Mexico Tech Computer Center Tkinter 8,5 referencia 133

mandatoa funcin que se va a llamar cuando el estado de este widget. Esta funcin re
cibe un argumento, el nuevo valor se muestra en el widget, como a flote .
cursor El cursor que aparece cuando el ratn se encuentra sobre la escala; vase la
seccin 5.8 , "Cursores" (p. 13).
from_ Utilice esta opcin en combinacin con thetooption (descrito a continuacin) par
a limitar los valores en un intervalo numrico. Por ejemplo,from_=10 y=10 permitira
slo los valores entre 10 y 20 inclusive. Vase tambin theincrement opcin abajo.
longitud La longitud de la escala widget. Esta es la dimensin x si la escala es h
orizontal, o la dimensin y si vertical. El valor predeterminado es 100 pxeles. Par
a valores permitidos, consulte Seccin 5.1 , "dimensiones" (p. 9).

orientar Setorient=tk.HORIZONTAL si desea que la escala para que se ejecute a lo


largo de la dimensin x, ororient=tk.VERTICAL en forma paralela al eje y. Por def
ecto es vertical.
estilo el estilo que se utiliza en esta radio; vase la Seccin 49, "Uso y para disea
r su propio ttk estilos" (p. 147).
takefocus De forma predeterminada, el ttk.Escala widget se incluirn en el enfoque
transversal; vase la Seccin 53, "Focus: enrutamiento entrada de teclado" (p. 155)
. Para quitar el widget del enfoque transversal, usetakefocus=False .
de a flote deines valor que uno de los extremos de la escala de rango; el otro e
xtremo es deined thefrom_ por opcin, que ya se ha descrito. Thetovalue puede ser
superior o inferior al valor thefrom_. Para escalas verticales, thetovalue deine
s la parte inferior de la escala horizontal; para las escalas, el extremo derech
o El valor por defecto es 100.
el valor predeterminado es de 0,0 . ; El valor Utilice esta opcin para establecer
el valor inicial del widget'svariable
variable Utilice esta opcin para asociar una variable de control con el widget. N
ormalmente, es atk.DoubleVar ejemplo que contiene un valor de typefloat . En su
lugar, puede utilizar atk.IntVar ejemplo, pero los valores almacenados en el mis
mo, como se truncar typeint .
Estas opciones del widget TkinterScale no son compatibles con el ttk.Escala widg
et constructor:
Tabla 58. No TkinterScale opciones de ttk.Escala
activebackground utilizar un estilo rock androll" produjo mapa opcin de control;
vase la seccin 50.2 , "ttk mapas: cambios en el aspecto dinmico" (p. 151).
antecedentes orbg Conigure opcin rock androll" produjo un estilo; esta opcin contr
ola el color de la barra de desplazamiento. No se admiten Thebgabbreviation.
borderwidth orbd Conigure esta opcin con un estilo.
dgitos no es compatible.
font no es compatible.
primer plano orfg no compatible.
highlightbackground no compatible.
highlightcolor no compatible.
highlightthickness no compatible.
etiqueta no compatible.
No compatible.
repeatdelayNot.
intervalo de repeticin no es compatible.
Tkinter 134 referencia 8.5 Nuevo Mxico Tech Computer Center

resolutionNot.
showvalue no es compatible.
sliderlength Conigure esta opcin con un estilo.
sliderrelief Conigure esta opcin con un estilo.
estado de ttk, no hay ninguna opcin con este nombre. El mecanismo de estado se ha
generalizado; vase la seccin 50.2 , "ttk estilo mapas: cambios en el aspecto dinmi
co" (p. 151),
no admite tickinterval.
troughcolorConigure esta opcin utilizando un estilo.
anchura Conigure thesliderthickness esta opcin con opcin en un estilo.
Mtodos de ttk.Escala incluyen todos los descritos en la Seccin 46, "Mtodos comunes
a todos ttk- se" (p. 145), adems de:
.get() devuelve el valor actual se muestra en el widget.
.Set(newValue) Cambiar el valor actual del widget tonewValue .
42. TTK.scrollbar
ttk Esta es la versin de la Seccin 22, "TheScrollbar widget" (p. 74). Para crear
un "ttk.desplazamiento como el hijo de un widget givenparent theoption, donde lo
s valores se indican en la Tabla 59, "ttk.scrollbar opciones" (p. 135):

w=ttk.scrollbar( parent,option=value,...)
Tabla 59. ttk.scrollbar opciones
class_ El widget nombre de clase. Esto puede ser propsitos especi cos cuando el wi
dget se crea, pero no se puede modificar ms adelante. Para obtener una explicacin
del widget clases, consulte la Seccin 27, "estandarizacin" (p. 105).
mandatoa procedimiento que se debe llamar cuando se mueve la barra de desplazami
ento. Para un anlisis de la secuencia de llamada, consulte la seccin 22.1 , "TheSc
rollbarcommand callback" (p. 77).
cursor El cursor que aparece cuando el ratn se encuentra sobre la barra de despla
zamiento; vase la seccin 5.8 , "Cursores" (p. 13).
orientar Setorient=tk.HORIZONTAL para una barra de desplazamiento horizontal, or
ient=tk.VERTICAL para una vertical (la orientacin predeterminada).
estilo el estilo que se va a utilizar en la representacin esta barra de desplazam
iento; vase la Seccin 49, "Uso y personalizacin de ttk estilos" (p. 147).
takefocus De forma predeterminada, un ttk.scrollbar no se incluirn en el enfoque
transversal; vase la Seccin 53, "Foco de atencin: de entrada de teclado" (p. 155).
Para aadir el widget a centrarse travesa, utilice takefocus=True .
Estas opciones de TkinterScrollbar widget no son compatibles con el ttk.scrollba
r constructor:
Nuevo Mxico Tech Computer Center Tkinter referencia 135 8,5

Tabla 60. Tkinter opciones no de ttk.scrollbar


activebackground utilizar un estilo rock androll" produjo mapa opcin de control;
vase la seccin 50.2 , "ttk mapas: cambios en el aspecto dinmico" (p. 151).
activerelief usar un estilo mapa therelief opcin de control; vase la seccin 50.2 ,
"ttk mapas: cambios en el aspecto dinmico" (p. 151).
antecedentes orbg Conigure opcin rock androll" produjo un estilo; esta opcin contr
ola el color de la barra de desplazamiento. Thebgabbreviation no es compatible.
borderwidth orbd Conigure theborderwidth opcin utilizando un estilo. Thebdabbrevi
ation no es compatible.
elementborderwidth no compatible.
highlightbackground no compatible.
highlightcolor no compatible.
highlightthickness no compatible.
salto que no compatible.
socorro Conigure esta opcin con un estilo.
repeatdelayNot.
intervalo de repeticin no es compatible.
troughcolorConigure esta opcin con un estilo.
anchura Conigure esta opcin con un estilo. Usted mayind que coniguringar- Proporc
in_ancho_estrecho,tamao_fila es una mejor opcin; en algunos temas, cada vez ms thewi
dth no puede aumentar el tamao de las puntas.
Mtodos de ttk.scrollbar incluyen todos aquellos descritos en la Seccin 46, "Mtodos
comunes a todos ttk widgets" (p. 145), adems de:
.delta(dx,dy) con un movimiento de ratn de(dx,dy)en pxeles, este mtodo devuelve the
float valor que se debe agregar a la posicin actual del control deslizante para l
ograr el mismo movimiento. El valor debe estar en el intervalo cerrado [ -1.0 ,
1.0 ].
.Fraccin( x,y) en una ubicacin de pxel(x,y), este mtodo devuelve la posicin de la bar
ra correspondiente normalizado en el intervalo [0.0 , 1.0 ], que es la ms cercana
a la ubicacin.
.Get() devuelve dos nmeros (a,b), en el que se describe la situacin actual del con
trol deslizante. Theavalue da a la pos- de la izquierda o en la parte superior d
e la barra de desplazamiento, de barras de desplazamiento horizontales y vertica
les, respectivamente; b valor da la posicin del borde derecho o inferior. Cada va
lor est en el intervalo [0.0 , 1.0 ] donde 0.0 es la izquierda o en la posicin sup
erior y 1.0 es el de la derecha o inferior. Por ejemplo, si el control deslizant

e se extiende desde mitad de tres cuartas partes de la forma a lo largo de la ca


naleta, puede volver la tupla (0.5,0 .75).
.Set(en primer lugar,el ltimo) para conectar un desplazamiento a otro widgetw, se
tw'sxscrollcommand oryscrollcommand hasta la barra de desplazamiento's .mtodo set
. Los argumentos tienen el mismo significado que los valores devueltos por la .g
et() mtodo. Por favor, tenga en cuenta que la barra de desplazamiento no se mueve
el widget correspondiente.
Tkinter 136 referencia 8.5 Nuevo Mxico Tech Computer Center

43. ttk.separador
utilice este widget para colocar una barra horizontal o vertical que separa otro
s widgets. El widget se representa como un 2 pxel de ancho. Asegrese de utilizar t
hesticky opciones al.grid() mtodo para estirar el widget, o aparecer como un solo
pxel.
Para crear un "ttk.separador, el hijo de un widget givenparent theoption, donde
los valores se indican en la Tabla 61, "ttk.El Separador opciones" (p. 137):
w=ttk.Separador( parent,option=value,...) en el
Cuadro 61. ttk.El Separador opciones
class_ El widget nombre de clase. Esto puede ser propsitos especi cos cuando el wi
dget se crea, pero no se puede modificar ms adelante. Para obtener una explicacin
del widget clases, consulte la Seccin 27, "Estandarizacin obis- po" (p. 105),
oriente Setorient=tk.HORIZONTAL de un separador horizontal,orientar=tk.VERTICAL
para una vertical (la orientacin predeterminada).
estilo el estilo que se utilizar en esta barra; vase la Seccin 49, "Uso y personali
zacin de ttk estilos" (p. 147). La nica caracterstica de estilos puede conigure is
background , que speciies el color de la barra de separacin; por defecto el color
es gris oscuro.
Los nicos mtodos disponibles en un ttk.Separator los widgets son las que se enumer
an en la Seccin 46, "Mtodos comunes a todos ttk widgets" (p. 145).
44. TTK.Sizegrip
Usar este widget para proporcionar un widget que el usuario puede utilizar para
cambiar el tamao de la ventana de la aplicacin completa. Tpico- ra este widget se e
ncuentra en la esquina inferior derecha de la aplicacin. Asegrese de tener toda la
aplicacin modificable mediante las tcnicas que se describen en la Seccin 4.3 , "Co
niguring tamaos columna y fila" (p. 7) Y en la Seccin 4.4 , "Hacer la ventana raz m
odificable" (p. 8).
Para crear un "ttk.Sizegrip como el hijo de un widget givenparent theoption, don
de los valores se indican en la Tabla 62, "ttk.Sizegrip opciones" (p. 137):
w=ttk.Sizegrip( parent,option=value,...) en el
Cuadro 62. ttk.Sizegrip opciones
class_ El widget nombre de clase. Esto puede ser propsitos especi cos cuando el wi
dget se crea, pero no se puede modificar ms adelante. Para obtener una explicacin
del widget clases, consulte la Seccin 27, "Estandarizacin obis- po" (p. 105).
estilo el estilo que se utilizar este widget en la representacin; vase la Seccin 49,
"Uso y personalizacin de ttk estilos" (p. 147). La nica caracterstica de estilos
puede conigure isbackground , que speciies el color del widget.
45. TTK.Treeview
El propsito del ttk.Treeview widget es presentar una estructura jerrquica para que
el usuario pueda utilizar acciones de ratn para mostrar u ocultar una parte de l
a estructura.
New Mexico Tech Computer Center Tkinter 8,5 referencia 137,

la asociacin con el trmino "rbol" se debe a la programacin prctica: estructuras de rbo


l son un lugar comn en el diseo de los programas. Estrictamente hablando, la jerar

qua que muestra aTreeview widget es un bosque: no hay una sola raz, slo un conjunto
de nodos de nivel superior, cada uno de los cuales puede contener nodos de segu
ndo nivel, cada uno de los cuales puede contener otros nodos de nivel, y as suces
ivamente.
Puede haber encontrado esta presentacin como una forma de navegar por un director
io o carpeta jerarqua. Toda la jerarqua se muestra como un esbozo con sangra, donde
cada uno de los directorios es una prc- lnea y los subdirectorios de cada directo
rio se muestran bajo esa lnea, con sangra:
El usuario puede hacer clic en el icono de un directorio de colapso (cierre), oc
ultando todos los elementos de ella. Los usuarios tambin pueden hacer clic en el
icono para expandir (abierto) que, a fin de que los elementos en el directorio o
carpeta se muestran.
Widget TheTreeview generaliza este concepto con el fin de que usted puede usar p
ara mostrar cualquier estructura jerrquica, y el lector puede contraer o expandir
los subrboles de esta estructura con el ratn.
En primer lugar, algunos deinitions:
tema Una de las entidades que se muestra en el widget. Explorador de ile, un ele
mento puede ser un dir- ativo o aile.
Cada elemento est asociado con una etiqueta textual, y tambin puede estar asociada
a una imagen.
iid cada elemento en el rbol tiene una nica cadena llamada identiier iid. Se puede
suministrar el valores de iid, o puede dejar que ttk generan.
nio los elementos directamente por debajo de un determinado tema en una jerarqua.
Un directorio, por ejemplo, pueden tener dos tipos de hijos:iles y subdirectorio
s.
padre para un elemento dado, si se encuentra en la parte superior de la jerarqua
se dice que no tienen padre; si no est en el nivel superior, el padre es el eleme
nto que contiene.
antepasado Los antepasados de un tema como el padre de los padres, su padre, y a
s sucesivamente hasta el nivel superior del rbol,
visible los elementos de alto nivel son siempre visibles. De lo contrario, un el
emento es visible slo si todos sus antepasados son expandidos.
descendiente Los descendientes de un tema como el de los nios, los nios de su infa
ncia, y as sucesivamente. Otra forma de decir esto es que el subrbol de una partid
a incluye tambin a todos sus descendientes,
marque el programa puede asociar una o ms cadenas de etiquetas a cada elemento. P
uede utilizar estas etiquetas para controlar la apariencia de un elemento. Por e
jemplo, podra etiquetar los directorios con la etiqueta'd' y de iles con la etiqu
eta "f" y, a continuacin, especificar los elementos con la etiqueta'd' usar un ti
po de letra en negrita.
Tkinter 138 referencia 8.5 Nuevo Mxico Tech Computer Center

tambin puede asociar eventos con etiquetas, de modo que ciertos acontecimientos q
ue causan ciertos controladores para ser llamados a todos los elementos que tien
en esa etiqueta. Por ejemplo, podra configurar una ile-explorador de modo que cua
ndo un usuario hace clic en un directorio, el navegador actualizado su contenido
a currentile compartan la estructura.
YourTreeview widget se estructurar con varias columnas. La primera columna, que l
lamaremos a la columna icono, muestra los iconos que contraer o expandir los tem
as. En el resto de las columnas, puede mostrar cualquier informacin que desee.
Por ejemplo, un simple navegador widget ile podra utilizar dos columnas, con el d
irectorio los iconos de la primera columna y el directorio o ile nombre en la se
gunda columna. O es posible que desee mostrar ile tamaos, permisos y otros datos
relacionados en columnas adicionales.
Las operaciones de theTreeview widget le permiten incluso que los utilizan como
un rbol editor. El programa puede extraer todo un subrbol desde su ubicacin en el rb
ol principal y, a continuacin, agregarlo a un punto completamente diferentes.

Aqu es el procedimiento general para la creacin de aTreeview widget.


1. Crear un widget con el ttk.Treeview constructor. Utilizar palabras clave thec
olumns argumento para especificar el nmero de columnas que se va a mostrar y a as
ignar nombres simblicos para cada columna.
2. Utilice la columna() y.partida() mtodos para configurar encabezados de columna
(si se quiere) y conigure propiedades de columna, como por ejemplo el tamao y es
tiramiento para.
3. Comenzando por la parte superior de las entradas, utilice el.insert() mtodo pa
ra rellenar el rbol. Cada llamada a este mtodo agrega un elemento a la estructura
de rbol. Utilizar palabras clave theopen argumento de este mtodo para especificar
si el elemento se expande inicialmente o se derrumb.
Si desea proporcionar el iid valor para este tema, palabra clave uso theiid argu
mento. Si se omite este argumento, ttk har uno y volver como el resultado de la.i
nsert() llamada al mtodo.
Utilizar palabras clave thevalues argumento de este mtodo para especificar lo que
debe aparecer en cada columna de este tema cuando es visible.
Para crear un widget en aTreeview givenparent widget:
w=ttk.Treeview( parent,option=value,...)
El constructor devuelve el newTreeview widget. Las opciones incluyen:
class_ puede proporcionar un widget nombre de clase al crear este widget. Este n
ombre puede ser utilizado para personalizar la apariencia del widget; vase la Sec
cin 27, "estandarizacin" (p. 105). Una vez que el widget se crea el widget nombre
de clase no puede ser cambiado.
las columnas una secuencia de la columna identiier cadenas. Estas cadenas se uti
liza internamente para identificar las columnas en el widget. La columna icono,
cuya identiier es siempre 'nO 0' , contiene el contraer/expandir los iconos y es
siempre theirst columna.
Las columnas que se especifique con thecolumns argumento son adems de la de la co
lumna.
Por ejemplo, si usted speciiedcolumns= ( 'Nombre', 'Tamao', tres columnas que apa
recen en el widget:nte la columna icono y, a continuacin, dos ms columnas cuyo int
erior se identiiers'Nombre' y 'Tamao' .
cursor Utilice esta opcin para especificar el aspecto del cursor del ratn cuando e
st sobre el widget; consulte la Seccin 5.8 , "Cursores" (p. 13). El valor por def
ecto (una cadena vaca) speciies que el cursor se hereda del padre widget.
New Mexico Tech Computer Center Tkinter 8,5 139 referencia

displaycolumns selecciona las columnas que se muestran realmente y determina el


orden de su presentacin. Los valores pueden ser:
' #all' para seleccionar todas las columnas y los muestra en el orden de las col
umnas deined argumento.
Una lista de nmeros de la columna (entero posiciones, a contar a partir de 0) o c
olumna identifi- iers thecolumns de argumento.
Por ejemplo, supongamos que specifycolumns= ( 'Nombre', 'Tamao' , 'Date' ).
Esto significa que cada llamada a la.insert() mtodo requerir un argumentval- ues=
(nombre, tamao, fecha)para suministrar los valores que se mostrarn. De aqu la secue
ncia lgica secuencia de columnas.
Supongamos tambin que en el constructor se specifycolumns= (2,0 ) . La secuencia
de columnas, las columnas que aparecen realmente en el widget, sern tres: el icon
o columna beirst, seguida de la columna de la fecha (ndice 2 en la columna lgica s
ecuencia), seguida de la columna nombre (columna lgica ndice 0). La columna tamao
no aparecer.
Usted puede conseguir el mismo efecto, especificando identiiers columna lgica en
lugar de las posiciones de la columna:columnas= ( "Fecha", "Nombre" ).
altura la altura deseada del widget, en filas.
padding usan este argumento para colocar ms espacio en el contenido del widget. U
sted puede aportar una sola dimensin o una secuencia de hasta cuatro dimensiones,

lo que se interpreta de acuerdo con la siguiente tabla:


valores que se le ha dado parte superior izquierda derecha abajo
a a a a a a b a b a b a b c a c b c a b c d a b c d
selectmode Esta opcin controla qu se permite que el usuario seleccione con el ratn.
Los valores pueden ser:
selectmode= "examinar" el usuario puede seleccionar slo un elemento a la vez.
selectmode= "extendido" El usuario puede seleccionar varios elementos a la vez.
selectmode= "ninguno" el usuario no puede seleccionar elementos con el ratn.
Para suprimir las etiquetas en la parte superior de cada columna, specifyshow= "r
bol". El valor predeterminado es mostrar las etiquetas de columna.
Utilice esta opcin para especificar un widget personalizado nombre de estilo; vase
la Seccin 47, "personalizar y crear ttk temas y estilos" (p. 146).
takefocus Utilice esta opcin para especificar si el widget es visitado durante en
foque transversal; vase la Seccin 53, "Focus: enrutamiento entrada de teclado" (p.
155). Specifytakefocus=True si desea la visita a aceptar; specifytakefocus=Fal
se si el widget est para no aceptar. El valor predeterminado es una cadena vaca; d
e forma predeterminada, ttk.Treeview widgets no recibe el foco.
Aqu estn los mtodos disponibles en aTreeview widget.
Tkinter 140 referencia 8.5 Nuevo Mxico Tech Computer Center

.bbox(tema,columna=None) para el tema con iiditem , si el elemento est visible, e


ste mtodo devuelve una tupla(x,y,w,h), en donde(x,y) son las coordenadas de la es
quina superior izquierda del elemento relativo a la widget, andwandhare la anchu
ra y la altura del elemento en pxeles. Si el elemento no es visible, el mtodo devu
elve una cadena vaca.
Si el argumento optionalcolumn se omite, se obtiene el cuadro delimitador de la
fila completa. Para obtener el cuadro delimitador de un speciic columna de la fi
la de elementos, usecolumn=CwhereCis ya sea el ndice de entero de la columna o la
columna identiier.
.Columna(cid,opcin=None, ** kw), este mtodo conigures la apariencia de la columna
lgico propsitos especi cos bycid , que puede ser un ndice de columna o una columna i
dentiier. A conigure el icono columna, utilice cido valor de'nO 0 ".
Cada columna de aTreeview widget tiene su propio conjunto de opciones de esta ta
bla:
ancla el ancla que speciies donde colocar el contenido de la columna. El valor p
redeterminado es "w" .
id El nombre de la columna. Esta opcin es de slo lectura y cuando se llama al cons
tructor.
anchura mnima anchura mnima de la columna en pxeles; el valor predeterminado es 20.
Si esta opcin tramo isTrue , la anchura de la columna se ajustarn cuando se cambia
el tamao del widget.
El valor predeterminado es 1.
widthInitial ancho de la columna en pxeles; el valor predeterminado es 200.
Si nooption valor o cualquier otra palabra clave argumento es suministrado, el mt
odo devuelve un diccionario de las opciones de columna para la columna propsitos
especi cos.
A la hora de interrogar el valor actual de una opcin namedX, utilice un argumento
ption=X.
Para definir una o ms opciones de columna, es posible que le pase palabra clave a
rgumentos mediante la opcin nombres indicados anteriormente, por ejemplo, fijar=t
k.en el centro el contenido de la columna.
* Elementos .DELETE() Los argumentos son valores de iid. Todos los elementos en
el widget que tenga que coincide con valores de iid son destruidos, junto con to
dos sus descendientes.
* Elementos .DETACH() Los argumentos son valores de iid. Todos los elementos en
el widget que tenga que coincide con valores de iid se eliminan de la visible wi
dget, junto con todos sus descendientes.

Los elementos no estn destruidas. Puede volver a colocarlos en el rbol visible con
el.move() mtodo que se describe a continuacin.
.Existe (iid) ReturnsTrue si existe un tema en el widget con el giveniid , ofals
e lo contrario. Si un elemento no est visible en ese momento porque se extrajo co
n el.separar() mtodo, an se considera que existe para los propsitos de la.existe().
.Focus( [iid]) si no proporciona un argumento de este mtodo, se obtiene el iid de
l elemento que tiene el foco en estos momentos, o "si no hay ningn elemento tiene
el foco.
Usted puede poner el foco en un tema al pasar su iid que el argumento de este mto
do.
.Get_children( [tema]) devuelve una tupla de valores de iid de los nios del tema
propsitos especi cos por theitem argumento. Si el argumento se omite, se obtiene u
na tupla que contiene los valores de los elementos de nivel superior.
New Mexico Tech Computer Center Tkinter referencia 141 8,5

.partida( cid,opcin=None, ** kw) Utilice este mtodo para conigure el encabezado de


la columna que aparece en la parte superior del widget para la columna propsitos
especi cos bycid , que puede ser un ndice de columna o una columna identiier. Usa
r valor de argumento de'nO 0" para conigure el ttulo de la columna icono.
Cada partida tiene su propio conjunto de opciones con estos nombres y valores:
ancla un ancla que speciies cmo el ttulo se alinea dentro de la columna; vase la se
ccin 5.5 , "anclajes" (p. 12). El valor predeterminado istk.W ,
mando un procedimiento al que se llama cuando el usuario hace clic en el encabez
ado de la columna.
imageTo presentar un grfico en el encabezado de la columna (con o en lugar de un
encabezado de texto), establezca esta opcin en una imagen, como propsitos especi co
s en la Seccin 5.9 , "Imgenes" (p. 14).
texto El texto que desea que aparezca en el encabezado de columna.
Si no provee ninguna palabra clave los argumentos, el mtodo devolver un diccionari
o que muestra la configuracin actual de la cabecera de la columna.
A la hora de interrogar el valor actual de algunas partidas optionX, utilice el
argumento de la opcin habilitar firmas digitales=X; el mtodo devolver el valor actu
al de esa opcin.
Se puede establecer uno o ms opciones encabezamiento de palabra clave como argume
ntos tales como "anchor=tk.CENTRO".
.Identify_column( x) Dada una coordenada x, este mtodo devuelve una cadena con la
forma'n'que lo identiique la columna que contiene la coordenada x.
Suponiendo que el icono se muestra la columna, el valor ofnis 0 para la columna
icono; 1 para la segunda columna fsica; 2 para la tercera columna fsico; y as suces
ivamente. Recordar que el nmero de la columna puede ser diferente del nmero de col
umna lgica en los casos en que se han reorganizado con thedisplaycolumns argument
o de theTreeview constructor.
Si la columna icono no aparece, el valor ofnis theirst fsica de 1 columna, 2 para
la segunda, y as sucesivamente.
.Identify_element( x,y) devuelve el nombre del elemento en la ubicacin(x,y) con r
especto al widget, o "si no hay ningn elemento ap- peras en esa posicin. Nombres d
e los elementos se examinan en la Seccin 50, "capa elemento ttk" (p. 149).
.Identify_region( x,y) en las coordenadas de un punto con respecto al widget, es
te mtodo devuelve una cadena que indica qu parte del widget contiene ese punto. Va
lores de retorno pueden incluir:
"nada" El punto no est dentro de una parte funcional del widget.
"La partida" El punto est dentro de uno de los encabezados de columna.
Separador del punto se encuentra en los encabezados de columna fila, pero en el
separador entre las columnas. Utilice el.identify_column() para determinar qu col
umna est situado justo a la izquierda de este separador.
"rbol", el punto se encuentra dentro de la columna icono.
'Cell', el punto se encuentra dentro de un elemento fila pero no dentro de la co

lumna icono.
.Identify_row( y) Si y-coordinateyis dentro de uno de los elementos, este mtodo d
evuelve el iid de ese tema. Si la coordenada vertical no est dentro de un element
o, este mtodo devuelve una cadena vaca.
Tkinter 142 referencia 8.5 Nuevo Mxico Tech Computer Center

.index (iid) Este mtodo devuelve el ndice del elemento con el speciiediid respecto
a su padre, a contar a partir de cero.
.Set_children( presente tema * eventout newChildren ) Utilice este mtodo para cam
biar el conjunto de los nios del tema cuyo iid isitem . ThenewChildren argumento
es una secuencia de iid cadenas. Los nios ofitem cualquier corriente que no son i
nnewChildren se eliminan.
.insert(parent,index,iid=None, ** kw) Este mtodo se agrega un nuevo elemento al rb
ol y devuelve el elemento de valor iid. Argumentos:
Para insertar un nuevo elemento de nivel superior, que este argumento una cadena
vaca. Para insertar un nuevo elemento como un hijo de un elemento existente, hac
en de este argumento, el elemento principal del iid.
y as sucesivamente. Para agregar un nuevo tema, como el ltimo de los hijos de los
padres, hacen de este argumento de extremo valor". ;1 ndice este argumento speci
ies la posicin de los padres de este nio en el que desea que el nuevo tema que se
ha aadido. Por ejemplo, para insertar el tema en la newirst nio, utilice un valor
de cero; para insertar, despus de que el padre'sirst nio, utilice un valor de
iid puede proporcionar un iid para el tema como un valor de cadena. Si no se pro
porciona un iid, se generar uno automticamente y devuelto por el mtodo.
Tambin puede especificar un nmero de opciones de elementos como palabra clave argu
mentos a este mtodo. La
imagen puede mostrar una imagen a la derecha del icono de esta fila de elementos
, proporcionando servicio=Iargument, whereIis una imagen como propsitos especi cos
en la Seccin 5.9 , "Imgenes" (p. 14).
openThis speciies opcin si este tema ser inicialmente. Si supplyopen=False , este
tema ser cerrado. Si supplyopen=True (Verdadero), el tema de los nios ser visible s
iempre que el elemento en s es visible. El valor predeterminado isFalse .
tagsYou puede alimentar una o ms cadenas de etiquetas que se va a asociar a este
tema. El valor puede ser una cadena nica o una secuencia de cadenas.
textYou puede suministrar texto que se mostrar en la columna icono de este tema.
Si se da, este texto aparecer a la derecha del icono, y tambin a la derecha de la
imagen si siempre.
los valores de este argumento los elementos de datos que se van a mostrar en cad
a columna del tema. Los valores son suministrados en la columna lgico. Si muy poc
os valores se suministran, el resto de las columnas se dejar en blanco en este te
ma; si es demasiado muchos valores son suministrados, los extras sern descartadas
.
.ITEM(IID[,OPTION[, ** kw] ]) Utilice este mtodo para establecer o recuperar las
opciones dentro del tema propsitos especi cos byiid . Vaya a la.sert() mtodo por en
cima de los nombres de las opciones.
Sin argumentos, devuelve un diccionario cuyas claves son los nombres de las opci
ones y los valores correspondientes son los parmetros de estas opciones. Para rec
uperar el valor de una determinada opcin, pase la opcin nombre como el segundo arg
umento. Para configurar una o ms opciones, pasarlos como palabra clave argumentos
para el mtodo.
.Move(iid,padre,index) mueva el elemento propsitos especi cos byiid a los valores
en el tema propsitos especi cos byparent en positionindex .
Argumentos de Padres andindex trabajo los mismos que los argumentos de la.index(
).
.Prximo(iid) Si el elemento propsitos especi cos byiid no es el ltimo hijo de su pad
re, este mtodo devuelve el iid del des- pus nio; si es el ltimo de los hijos de su p
adre, este mtodo devuelve una cadena vaca. Si los propsitos especi cos

New Mexico Tech Computer Center Tkinter 8,5 referencia 143

tema es un elemento de nivel superior, el mtodo devuelve el iid del siguiente ele
mento de nivel superior, o una cadena vaca si el propsitos especi cos tema es el lti
mo elemento de nivel superior.
.Padres iid) Si el elemento byiid propsitos especi cos es un elemento de nivel sup
erior, este mtodo devuelve una cadena vaca; de lo contrario, devuelve el iid de qu
e el tema principal.
.Anterior (iid) Si el elemento propsitos especi cos byiid no es el primer hijo de
su padre, este mtodo devuelve el iid del nio anterior; de lo contrario, devuelve u
na cadena vaca. Si los propsitos especi cos elemento es un elemento de nivel superi
or, este mtodo devuelve el iid del anterior elemento de nivel superior, o una cad
ena vaca si es el primer elemento de nivel superior.
.Ver(iid )
Este mtodo asegura que el tema propsitos especi cos byiid es visible. Cualquiera de
sus ancestros que estn cerradas se abren. El widget se desplaza, si es necesario
, de modo que el elemento aparece.
.Selection_add( elementos) adems de los elementos ya seleccionado, agregar la spe
ciieditems . El argumento puede ser una sola iid o una secuencia de iid.
.Selection_remove( elementos) anular los elementos propsitos especi cos por el arg
umento, que puede ser un solo iid o una secuencia de iid.
.Selection_set( elementos) Slo el speciieditems sern seleccionados; si todos los o
tros temas fueron seleccionados, sern deseleccionados.
.Selection_toggle( elementos) El argumento puede ser un solo iid o una secuencia
de iid. Para cada tema propsitos especi cos por el argumento, si se ha selecciona
do, anule; y, si se selecciona, seleccione.
.Set(iid,columna=None, el valor=None) utilizar este mtodo para recuperar o establ
ecer los valores de columna del tema propsitos especi cos byiid . Con un argumento
, el mtodo devuelve un diccionario: las claves son los columna identiiers y cada
valor es el texto en la columna correspondiente.
Con dos argumentos, el mtodo devuelve el valor de los datos de la columna del ele
mento seleccionado cuya columna identiier es propiedad column argumento. Con tre
s argumentos, el tema del valor de la columna propsitos especi cos se ajusta en el
tercer argumento.
.Tag_bind( tagName,secuencia=None, callback=None) Este mtodo enlaza el controlado
r de eventos por propsitos especi cos thecallback argumento a todos los elementos
que han tagtagName . Lasecuencia andcallback argumentos funciona de la misma com
o lasecuencia andfunc argumentos del.bind() mtodo descrito en el Captulo 26, "Univ
ersal widget" (p. 97).
.Tag_configure( tagName,opcin=None, ** kw), este mtodo puede interrogar o configur
ar las opciones que afectan la apariencia de todos los elementos que se tagtagNa
me . Las opciones incluyen Etiqueta:
"antecedentes" el color de fondo.
'Fuente' la fuente de texto.
"Primer plano" el color de primer plano.
"La imagen de una imagen que se mostrar en los elementos con la etiqueta.
Cuando son llamadas con un argumento, que devuelve un diccionario de las actuale
s opciones de etiqueta. Para devolver el valor de un speciic optionX, useXas el
segundo argumento.
Tkinter 144 referencia 8.5 Nuevo Mxico Tech Computer Center

para configurar una o ms opciones, utilice la palabra clave argumentos tales asfo
reground= "rojo".
.Tag_has( tagName[ ,iid]) con un argumento, este mtodo devuelve una lista de los

valores de todos los elementos que llevan etiqueta tagName . Si proporciona un i


id como segundo argumento, el mtodo returnsTrue si el elemento con que iid ha tag
tagName ,de lo contrario, devuelve False.
.XVIEW( * args) Este es el mtodo habitual para conectar una barra de desplazamien
to horizontal de la widget. Para obtener ms informacin, consulte la seccin 22.1 , "
TheScrollbarcommand callback" (p. 77).
.YVIEW( * args) Este es el mtodo habitual para conectar un desplazamiento vertica
l para un widget. Para obtener ms informacin, consulte la seccin 22.1 , "TheScrollb
arcommand callback" (p. 77).
45.1 . Eventos virtuales para el ttk.Treeview widget
ciertos cambios de estado en aTreeview widget generar eventos virtuales que se p
ueden utilizar para responder a estos cambios; vase la seccin 54,8 , "eventos virt
uales" (p. 165).
Cada vez que se produzca un cambio en la seleccin, ya sea por elementos cada vez
seleccionado o no seleccionados en el widget genera un"&lt; <TreeviewSelect>&gt
; " Evento.
Cuando se abre un elemento, el widget genera un"&lt; <TreeviewOpen>&gt; " Event
o.
Siempre que un tema est cerrado, el widget genera un"&lt; <TreeviewClose>&gt; "
Evento.
46. Mtodos comunes a todos los widgets ttk
Los mtodos que se muestran aqu estn disponibles en todos los ttk widgets.
.Del cget(opcional) Este mtodo devuelve el valor de la speciiedoption .
.Configure( option=value,...) para configurar una o ms opciones widget, utilice l
a palabra clave argumentos la opcin habilitar firmas digitales=valor . Por ejempl
o, para establecer un widget'sfont , puede utilizar un argumento como "font= ( "
serif", 12) ".
Si no hay argumentos, el mtodo devolver un diccionario de todos los widget de valo
res de opcin. En este diccionario, las teclas se la nombre de opcin, y cada valor
ser una tupla (nombre,dbname,dbClass, omisin, corriente):
nombre El nombre de la opcin.
dbname El nombre de la base de la opcin.
dbClass La clase de base de datos de la opcin. El
valor predeterminado el valor predeterminado de la opcin.
El valor actual de la opcin.
.Identificar( x,y) Usar esta opcin para determinar cul es el elemento en un lugar
determinado dentro del widget. Si el punto(x,y) en relacin con el widget se encue
ntra en algn punto en el widget, este mtodo devuelve el nombre del elemento en esa
posicin; de lo contrario, devuelve una cadena vaca.
New Mexico Tech Computer Center Tkinter referencia 145 8,5

.ha vuelto( stateSpec ,llamada=None, * args, ** kw) El propsito de esto para dete
rminar si el widget est en un propsitos especi cos estado o combinacin de estados.
Si se proporciona un valor que se puede llamar como thecallback argumento y el w
idget coincide con el estado o combinacin de estados thestateSpec propsitos especi
cos de argumento, que se llama exigible con posi- * args argumentos argumentos y
palabra clave ** kw . Si el widget del estado no coincide con stateSpec , theca
llback no ser llamado.
Si no proporciona acallback argumento, el mtodo returnTrue si el widget del estad
o matchesstateSpec ,de lo contrario, devuelve False.
Para la estructura de thestateSpec argumento, vase la seccin 46.1 , "Especificar w
idget estados de ttk" (p. 146).
.Estado(stateSpec=None) Utilice este elemento ya sea para consultar un widget pa
ra determinar su estado actual, o para establecer o borrar un estado.
Si usted astateSpec argumento de la forma que se describe en la Seccin 46.1 , "Es
pecificar widget estados de ttk" (p. 146), el mtodo, definir o borrar los estados
en el widget de acuerdo con ese argumento.

Por ejemplo, en el caso de un widgetw, el methodw.El estado( [ ' !desactivada",


"seleccionado" ]) borrar el widget's "discapacitado" y juego "seleccionados" su
estado.
46.1 . Especificar los estados widget de ttk
varios mtodos de ttk requieren speciies astateSpec argumento de que un widget con
creto estado o combinacin de estados. Este argumento puede ser cualquiera de los
siguientes:
un estado con un solo nombre tales como "presionado". ".Button widget est en est
e estado, por ejemplo, cuando el cursor del ratn est sobre el botn y botn 1 del ratn.
Nombre de un solo estado precedido por un signo de admiracin (!); esto coincide c
on el widget estado slo cuando ese estado.
Por ejemplo, astateSpec argumento' !presin speciies un widget que actualmente no
se est pulsado.
Una secuencia de nombres de estado, o nombres de estado precedida por un' ! ".
Tal astateSpec coincidencia slo cuando todos sus componentes. Por ejemplo, valor
de astateSpec( ' !desactivada", "objetivo") coincide con un widget slo cuando ese
widget no est desactivada y tiene el foco.
47. Personalizar y crear ttk temas y estilos
Diseo de ttk widgets implica tres niveles de abstraccin:
Un tema es una completa"mirar y sentir", personalizar el aspecto de todos los wi
dgets.
Un estilo es la descripcin de la aparicin de un tipo de widget. Cada tema viene ac
ompaado de un conjunto de estilos predeined, pero puede personalizar los estilos
integrados o crear su propia nuevos estilos.
La frase "tipo de widget" en el prrafo anterior tcnicamente se refiere a la "clase
" de un widget.
Sin embargo, en el mundo "ttk, este es diferente clases de Python. Dentro de ttk
, la clase de un widget es una cadena de caracteres. Por ejemplo, la clase de tt
k stockButton widget es la cadena'TButton".
Cada estilo se compone de uno o ms elementos. Por ejemplo, el estilo de un tpico b
otn tiene cuatro elementos: un borde alrededor de la parte exterior, un elemento
del foco que cambia de color cuando el widget tiene el foco de entrada; un relle
no, y el botn de la etiqueta (texto, imagen, o ambos).
Tkinter 146 referencia 8.5 Nuevo Mxico Centro de Informtica Tecnologa

vamos a discutir el descubrimiento, uso y personalizacin de cada una de estas cap


as en secciones separadas.
En la Seccin 48, "encontrar y usar ttk temas" (p. 147).
En la Seccin 49, "Uso y personalizacin de ttk estilos" (p. 147).
En la Seccin 50, "elemento La ttk capa" (p. 149).
48. Encontrar y usar ttk temas
una serie de operaciones relacionadas con los temas requieren que tenga disponib
le una instancia de la ttk.estilo clase Python (en el sentido de clase). Por ej
emplo, para obtener una lista de los temas disponibles en la instalacin:
&gt;&gt;&gt;importttk &gt;&gt;&gt;s=ttk.Style() &gt;&gt;&gt;s.theme_names ( 'alm
eja' , 'alt' , 'default', 'clsico')
La.theme_names() mtodo devuelve una tupla que contiene los nombres de los estilos
disponibles. El tema 'clsico' le da la original, pre-ttk apariencia.
Para determinar qu tema se obtiene de forma predeterminada, utilice el.theme_use(
) sin argumentos. Para cambiar el tema actual, llame a este mismo mtodo con el no
mbre del tema deseado como argumento:
&gt;&gt;&gt;s.theme_use() 'default' &gt;&gt;&gt;s.theme_use( "alt") &gt;&gt;&gt;
s.theme_use() 'alt'
49. Uso y personalizacin de ttk estilos
dentro de un tema determinado, cada widget tiene un widget por defecto clase; ut
ilizamos este trmino para diferenciar ttk clases clases de Python.
Cada widget tambin tiene un estilo. El estilo predeterminado de un widget est dete

rminado por su clase widget, pero puede especificar un estilo diferente.


En ttk, widget las clases y estilos son propsitos especi cos como cadenas. En todo
s los casos, excepto en uno, el nombre de estilo predeterminado de un widget se'
T' preixed a el nombre del widget, por ejemplo, el widget de botn predeterminado
clase TButton' ".
Hay algunas excepciones:
New Mexico Tech Computer Center Tkinter referencia 147 8,5

Tabla 63. Nombres de estilo clases de ttk widget


Widget nombre de estilo clase
Botn ButtonTButton TCheckbutton ComboboxTCombobox Bastidor Entrada Tentrada TFram
e Etiqueta TLabel
LabelFrameTLabelFrame MenubuttonTMenubutton NotebookTNotebook PanedWindow TPaned
window (notTPanedWindow !) Horizontal Progressbar.TProgressbar orVertical.TProgr
essbar , dependiendo de la orientacin.
Radiobutton
Escala Horizontal TRadiobutton.TScale orVertical.TScale , dependiendo de theorie
nt opcin.
ScrollbarHorizontal.TScrollbar orVertical.TScrollbar , segn theorient opcin.
SeparatorTSeparator SizegripTSizegrip TreeviewTreeview (notTTreview !)
en tiempo de ejecucin, puede recuperar un widget widget, llamando a la clase.winf
o_class().
&gt;&gt;&gt;B=ttk.Button(Ninguno) &gt;&gt;&gt;b.winfo_class() 'TButton" &gt;&gt;
&gt;t=ttk.Treeview (Ninguna) &gt;&gt;&gt;t.winfo_class() 'rbol' &gt;&gt;&gt;b.mgic
amente __CLASS__#aqu,weareaskingforthePythonclass <classttk.Button at0x21c76d0>
El nombre de un estilo puede tener uno de dos formas.
Los estilos integrados son todos una sola palabra: "TFrame o 'TRadiobutton", por
ejemplo.
Para crear un nuevo estilo derivado de uno de los estilos, utilice un nombre de
estilo de la forma nueva de Nombre.oldname". Por ejemplo, para crear un nuevo e
stilo ofEntry widget para celebrar una fecha, usted puede llamar'Fecha.Tentrada"
.
Cada estilo tiene un conjunto correspondiente de opciones que deine su aparienci
a. Por ejemplo, los botones tienen un primer plano opcin que cambia el color del
texto del botn.
Para cambiar la apariencia de un estilo, utilice su.configure(). Theirst argume
nto de este mtodo es el nombre del estilo que desea conigure, seguido por palabra
clave argumentos especificando la opcin los nombres y los valores que desee camb
iar. Por ejemplo, para hacer que todos sus botones con texto de color verde, don
de se encuentra en instancia de thettk.clases de estilo:
8,5 Tkinter referencia 148 Nuevo Mxico Tech Computer Center

s.configure( 'TButton', el primer plano= 'green')


para crear un nuevo estilo basado en algunos styleoldName ,irst crear una instan
cia ofttk.estilo y, a continuacin, llamar a su .configure() mtodo que utiliza un n
ombre de la forma "nuevonombre.oldname". Por ejemplo, supongamos que usted no d
esea utilizar texto marrn en todos los botones, pero que desea crear un estilo nu
evo que no uso granate texto y desea llamar al nuevo estilo de Kim.TButton':
s=ttk.Style(s.configure( 'Kim.TButton', el primer plano= 'granate')
y, a continuacin, a crear un botn en la nueva clase se puede usar algo como esto:
self.b=ttk.Button(self, text= 'Viernes', style= 'Kim.TButton', command=self._fri
dayHandler)
incluso puede crear jerarquas de estilos todo. Por ejemplo, si usted conigure un
estilo con el nombre de Pan-ic.Kim.TButton", ese estilo heredar todas las opcione

s de la'Kim.TButton, es decir, cualquier opcin que no se establece en el "pnico.Ki


m.TButton estilo ser el mismo que en la opcin "Kim" estilo TButton.
Cuando ttk determina cul es el valor de uso de una opcin, que looksirst en el "pnic
o.Kim.TButton de estilo; si no hay ningn valor de la opcin en ese estilo, busca en
el "Kim" estilo TButton; y si ese estilo no deine la opcin, que se ve en el esti
lo TButton.
Existe una raz estilo cuyo nombre es' . ". A cambio de alguna caracterstica apari
encia predeterminada para cada widget, puede conigure este estilo. Por ejemplo,
supongamos que desea todo el texto 12-punto Helvetica (a menos que ser descartad
a por otro estilo orfont opcin). Esta configuracin lo hara:
s=ttk.Style(s.configure( ' . ', font= ( "Helvetica", 12))
50. El ttk
ttk UNA capa elemento elemento es una de las piezas que componen un widget. A fi
n de comprender cmo los elementos se sembled en estilos, lea estas secciones.
Artculo 50.1 , "ttk presentaciones: estructuracin de un estilo" (p. 149): la estru
ctura esttica de los elementos dentro de un widget.
Seccin 50.2 , "ttk mapas: cambios en el aspecto dinmico" (p. 151): los estados de
un widget y de qu manera los estados altera su apariencia.
50.1 . Ttk presentaciones: estructuracin de un estilo
en general, las piezas de un widget se montan utilizando la idea de una cavidad,
un espacio vaco que se illed con elementos.
Por ejemplo, en tema theclassic, un botn tiene cuatro elementos concntricos. En el
afuera, son el centro de atencin, borde, relleno y elementos contenidos en la et
iqueta.
Cada uno de estos elementos tiene un atributo "pegajosas" que speciies cmo muchos
de los cuatro lados de la cavidad "palos". Por ejemplo, si el elemento tiene a
sticky= "ew" atributo, lo que significa que debe extenderse con el fin de cumpli
r a la izquierda (oeste) y a la derecha (este) lados de su cavidad, pero no tien
e que estirar verticalmente.
La mayora de las ttk estilos utilizar la idea de un diseo para organizar las difer
entes capas que componen el widget. Suponiendo una instancia ofttk thatSis.Style
, para recuperar ese estilo diseo de usar una llamada a un mtodo de esta forma, w
herewidgetClass es el nombre de la clase widget.
New Mexico Tech Computer Center Tkinter 8,5 referencia 149

S. diseo(widgetClass )
Algunos widget las clases no tienen un diseo; en esos casos, esta llamada al mtodo
subir atk.TclError- do.
Para el widget clases que tienen una presentacin, el valor devuelto es una lista
de tuplas(eltName,d). Dentro de cada tupla,eltName es el nombre de un elemento
anddis un diccionario en el que se describe el elemento.
Este diccionario puede tener los valores de las siguientes teclas:
"pegajosas" una cadena que deines cmo este elemento ha de colocarse dentro de su
padre. Esta cadena puede contener cero o ms caracteres'n', 's ' , 'e', y'w', refi
rindose a los lados de la caja con las mismas convenciones como delimitadores. Po
r ejemplo, el valuesticky= 'nsw" se extendera este elemento a que se adhieran al
norte, sur y oeste de la cavidad dentro de su elemento primario.
'Parte' de los elementos con varios hijos, este valor deines cmo el elemento de l
a infancia se coloca dentro de l. Los valores pueden ser de izquierda", "derecha"
, "arriba", o "parte inferior .
"Los nios" si hay elementos dentro de este elemento, esta entrada en el diccionar
io es la disposicin de los elementos secundarios utilizando el mismo formato que
el diseo de nivel superior, es decir, una lista de dos elementos de tuplas(eltNam
e,d).
Analicemos la disposicin de la stockButton widget de la "clsica" en esta conversac
in tema ex- abundante.
&gt;&gt;&gt;Importttk &gt;&gt;&gt;s=ttk.Style() &gt;&gt;&gt;s.theme_use( 'clsico'

) &gt;&gt;&gt;b=ttk.Button(None, text= 'Yo') &gt;&gt;&gt;bClass=b.winfo_class()


&gt;&gt;&gt;bClass 'TButton" &gt;&gt;&gt;diseo=s.diseo( 'TButton') &gt;&gt;&gt;dis
eo [ ( "Button.resaltar", { "hijos": [ ( "Button.borde', { 'borde':
' 1 ' , 'nios': [ ( "Botn.padding', { "hijos": [ ( "Botn.etiqueta', { 'sticky': 'ns
we' } ) ], 'sticky' : 'nswe' } ) ], 'sticky' : 'nswe' } ) ], 'sticky' : 'nswe' }
)]
Todos los parntesis, corchetes y llaves hacer que estructura un poco difcil de ent
ender. En este sentido, es en forma de esquema:
El elemento ms externo es el foco resaltar; tiene estilo"Button.resaltar". Su "p
egajosas" en homenaje'nswe", es decir, debe ampliarse en las cuatro direcciones
toill su cavidad.
El nico nio de la atencin es el elemento border, con estilo "Button.frontera". Tie
ne una "frontera de anchura de 1 pxel, y su "pegajosas" atributo speciies tambin q
ue se adhiere a los cuatro lados de su cavidad, que es deined por el interior de
l elemento resaltado.
En el interior de la frontera es una capa de relleno, con estilo "Button.relleno
". Tambin atributo Itssticky speciies itills que su cavidad.
En el interior de la capa relleno es el texto (o imagen, o ambos) que aparece en
el botn. Su estilo es'pero- ton.etiqueta", con las usualsticky= 'nswe de atribut
o.
Cada elemento tiene un diccionario del elemento opciones que afectan la aparienc
ia de los elementos. Los nombres de estas opciones son todos regulares Tkinter o
pciones tales como "ancla" , 'justificar' , 'fondo' o 'highlightthickness".
Tkinter 150 referencia 8.5 Nuevo Mxico Tech Computer Center

para obtener la lista de los nombres de las opciones, utilice un mtodo llamado de
esta forma, whereSis una instancia de la clase ttk.Style :
S. element_options( stylename ) El resultado es una secuencia de la opcin cadenas
, cada uno de ellos precedido por un guin. Continuacin de nuestra conversacin, una
instancia ofttk wheresis.Style :
&gt;&gt;&gt;d=s.element_options( 'Button.resaltar") &gt;&gt;&gt;d ( ' -highlight
color', ' -highlightthickness")
Toind de los atributos que se asocian con un elemento opcional, utilice una llam
ada a un mtodo de la siguiente forma:
s.lookup(nombre de layout ,optname)
seguir nuestro ejemplo:
&gt;&gt;&gt;s.lookup( "Botn.resalte', 'highlightthickness") 1 &gt;&gt;&gt;s.looku
p( "Botn.resalte', 'highlightcolor") " #d9d9d9" &gt;&gt;&gt;impresiones.element_o
ptions( "Botn.label') ( ' -compuesto', ' -espacio' , 'texto' , ' -font' , ' -prim
er plano', ' -subrayan', 'ancho' , ' -ancla', ' -justificar', ' -wraplength', '
-grabado', 'imagen', ' -stipple', ' -fondo") &gt;&gt;&gt;s.lookup( "Button. Etiq
ueta", "primer plano", "negro",
50.2 . ttk estilo mapas: cambios en el aspecto dinmico
del ttk widgets pueden cambiar su apariencia durante la ejecucin del programa. Po
r ejemplo, cuando un widget est desactivado, no responder a las acciones del ratn
o del teclado. Normalmente, un widget con discapacidad presenta un aspecto difer
ente para que el usuario pueda darse cuenta de que el widget no responde al ratn.
En general, cada ttk widget tiene un conjunto de statelags que puede utilizar pa
ra hacer la apariencia de un widget cambiar durante la ejecucin. Cada uno de los
estados se puede establecer (activado) o cero (desactivado) de forma independien
te de los otros estados. Los estados y sus significados:
activoel ratn est actualmente en el widget.
suplente Este estado est reservado para el uso de la aplicacin.
antecedentes bajo Windows o MacOS, el widget se encuentra en una ventana que no
es la ventana de primer plano.
desactivado el widget no responder a las acciones del usuario,
el widget que actualmente tiene el foco.

no es vlido el contenido del widget no son vlidas actualmente.


pulsa El widget est actualmente siendo presionado (por ejemplo, un botn que est sie
ndo seguido).
readonly El widget no permitir que cualquier usuario medidas para cambiar su val
or actual. Por ejemplo, lectura de widget onlyEntry no permiten la edicin de su c
ontenido.
New Mexico Tech Computer Center Tkinter 8,5 151 referencia

seleccionada del widget es seleccionado. Ejemplos de ello son checkbuttons y bot


ones que se encuentran en el estado de "encendido".
Algunos estados se cambian en respuesta a las acciones del usuario, por ejemplo,
estado thepressed unbotn . El programa puede interrogar, claro, o cualquier esta
do mediante funciones que se describen en la Seccin 46, "Mtodos comunes a todos tt
k widgets" (p. 145).
La lgica que cambia la apariencia de un widget est vinculada a uno de sus elemento
s. A la hora de interrogar o configurar comportamiento dinmico de un estilo speci
ic, dado un instancesof ttk.Style , utilizar este mtodo, donde stylename es el no
mbre del elemento, por ejemplo, "Botn.etiqueta" o "frontera" .
s.map(stylename , * p, ** kw)
para determinar el comportamiento dinmico de una de las opciones de un determinad
o elemento de estilo, pase el nombre de la opcin en el segundo argumento de posic
in, y el mtodo devolver una lista de especificaciones cambio de estado.
Cada cambio de estado requisitos especificados es una secuencia estado actual co
incide con todas las o un nombre de estado precedida por que no empezar con" ! "
, y
(s0,s1,n). Esta secuencia significa que cuando el widget de siparts, establezca
la opcin a la valuen. Cada itemsiis o un nombre de estado, un " ! ". Para coinc
idir con el widget debe en todos los estados que se describen en los puntos que
no debe estar en cualquiera de los estados que inicio con" ! ".
Por ejemplo, supongamos que tenemos un instancesof classttk.Style , y se supone
que es como este:
los cambios=s.map( 'TCheckbutton', 'indicatorcolor")
supongamos tambin que el valor de retorno es:
[ ( "apretada", " #ececec' ), ( "seleccionados", " # 4a6984 " )]
Esto significa que cuando un botn est en estado thepressed itsindicatorcolor opcin,
se debe establecer en el color #ececec", y cuando el botn est en estado seleccion
ada, itsindicatorcolor opcin debe estar configurado en " # 4a6984 ".
Tambin puede cambiar el comportamiento dinmico de un elemento por pasar uno o ms ar
gumentos de la palabra clave.map() mtodo. Por ejemplo, con el fin de obtener el c
omportamiento del ejemplo de arriba, utilice esta llamada al mtodo:
s.map( 'TCheckbutton', indicadorde= [ ( "apretada", " #ececec' ), ( "seleccionad
os", " # 4a6984 " ) ])
porque nuestro nombre termina en " .TButton", hereda automticamente el estilo estn
dar. A continuacin, cmo configurar este nuevo estilo: ; Aqu hay un ejemplo ms comple
jo. Supongamos que desea crear un botn personalizado basado en el estilo standard
TButton clase. Le nombre nuestro styleWild.TButton
s=ttk.Style(s.configure( 'Wild.TButton', background= 'negro', el primer plano= "
blanco", highlightthickness= ' 20 ', font= ( "Helvetica", 18 "bold") s.map( 'Wil
d.TButton', el primer plano= [ ( "discapacitado", "amarillo" ), ( "apretada", "r
ojo" ), ( 'activo', 'azul' ) ], background= [ ( "discapacitado", "magenta" ), "a
pretada", " !atencin' , 'cian' ), 'activo', 'verdes' ) ], highlightcolor= [ ( 'fo
cus', 'verde' ),
152 Tkinter 8,5 referencia Nuevo Mxico Tech Computer Center

( ' !atencin', 'rojo' ) ], socorro= [ ( "apretada", "groove" ), ( " !pulsa", "rid


ge" ) ])
Esta Botn se mostrar inicialmente texto blanco sobre un fondo negro, con un 20-pix
el enfoque destacar.
Si el botn se encuentra en estado "desactivado" se muestran texto amarillo sobre
un fondo magenta.
Si el botn est actualmente siendo presionado, el texto ser rojo; siempre que el botn
no tiene el foco, los antecedentes sern cian. La tupla( "apretada", " !atencin' ,
'cian') es un ejemplo de cmo se puede hacer un atributo depende de una combinacin
de los estados.
Si el botn est activo (bajo el cursor), el texto ser azul sobre un fondo verde.
El objetivo resaltar se pondr de color verde cuando el botn tiene el foco y rojo c
uando no lo hace.
El botn mostrar ridge alivio cuando no se presiona y la ranura de alivio cuando se
pulsa.
51. Conexin de la lgica de la aplicacin de los widgets
las secciones anteriores hemos hablado acerca de cmo organizar y conigure los wid
gets de la parte frontal de la aplicacin.
A continuacin, hablaremos sobre cmo conectar el widgets a la lgica que lleva a cabo
las acciones que el usuario solicita.
Para hacer que la aplicacin responda a eventos como clics del mouse (ratn) o entra
das de teclado, hay dos mtodos:
Algunos controles como botones tienen un comando (u otra cosa atributo que permi
te especificar un procedimiento, llamado un controlador, que se llama cuando el
usuario hace clic en ese control.
La secuencia de los acontecimientos para utilizar unbotn widget es muy speciic, a
unque. El usuario debe mover el puntero del ratn en el widget con el botn 1 del ra
tn hacia arriba y, a continuacin, pulse el botn del ratn 1 y, a continuacin, soltar e
l botn del ratn 1 mientras an estn en el widget. Ninguna otra secuencia de los acont
ecimientos, "pulse" unbotn widget.
Existe un mecanismo mucho ms general que le permita reaccionar ante la aplicacin d
e muchos ms tipos de entradas: la libertad de prensa o cualquier tecla del teclad
o o el botn del mouse; el movimiento del ratn en o alrededor de un widget, y mucho
s otros eventos. Como withcommand controladores, en este mecanismo se escribe lo
s procedimientos identificadores que se llama siempre que determinados tipos de
eventos. Este mecanismo se describe en la Seccin 54, "Eventos" (p. 157).
Muchos widgets necesitan utilizar variables de control, objetos especiales que s
e conectan los widgets y a su programa, por lo que se puede leer y establecer la
s propiedades de los widgets. Las variables de control se analizarn en la siguien
te seccin.
52. Variables de Control: los valores que sustentan los widgets
A Tkinter variable de control es un objeto especial que acta como una variable de
Python que es el contenedor de un valor, como un nmero o una cadena.
Una calidad especial de una variable de control es que puede ser compartida por
un nmero de diferentes widgets, y la variable de control puede recordar todos los
widgets que estn trabajando actualmente. Esto significa, en particular, que si e
l programa almacena un valuevinto un control variablecwith itsc.set(v) mtodo, los
widgets que estn vinculadas a la variable de control se actualizan automticamente
en la pantalla.
Tkinter utiliza variables de control para una serie de funciones importantes, po
r ejemplo:
Nuevo Mxico Tech Computer Center Tkinter 8,5 referencia 153

Checkbuttons utilizar una variable de control para mantener el estado actual de


el botn (o).
Una nica variable de control es compartida por un grupo de radiobuttons y se pued
e utilizar para indicar que uno de ellos se establece en la actualidad. Cuando e

l usuario hace clic en un radiobutton en un grupo, el intercambio de esta variab


le de control es el mecanismo por el cual los radiobuttons Tkinter grupos para q
ue cuando se establece una, o en cualquier otro conjunto radiobutton en el grupo
se borra.
Controlar las variables cadena de texto para varias aplicaciones. Normalmente, e
l texto que se muestra en un widget est vinculado a una variable de control. En v
arios otros controles, es posible utilizar una cadena de valor variable de contr
ol para texto, como las etiquetas de checkbuttons y botones y el contenido de la
etiqueta widgets.
Por ejemplo, puede enlazar un widget que permite aLabel widget para que cuando e
l usuario cambia el texto de la entrada y presiona la tecla Intro, la etiqueta s
e actualiza automticamente para mostrar que el mismo texto.
Para obtener una variable de control, utilice uno de los constructores de clase,
dependiendo de qu tipo de valores que se necesitan para almacenar en ella:
v=ct.DoubleVar() #Holdsafloat;defaultvalue0.0 v=ct.IntVar() #Holdsanint;defaultv
alue0 v=tk.StringVar() #Holdsastring;defaultvalue"
todas las variables de control tienen estos dos mtodos:
.get() devuelve el valor actual de la variable.
.Set(valor) Cambia el valor de la variable. Si las opciones son cualquier widget
puede esclavizar a esta variable, los widgets se actualizar cuando el bucle prin
cipal junto al ralent; consulte .update_idletasks() en el Captulo 26, "Universal w
idget" (p. 97) Para obtener ms informacin sobre este ciclo de actualizacin.
Aqu estn algunos comentarios sobre cmo se utilizan las variables de control con spe
ciic widgets:
Botn puede ajustar itstextvariable a aStringVar . Momento en el que cambio de var
iable, el texto en el botn se actualizar para mostrar el nuevo valor. Esto no es n
ecesario, a menos que el texto del botn es en realidad va a cambiar: El uso acumu
lacin delcampo atributo si el botn de la etiqueta es esttica.
Botn Normalmente, debe establecer la opcin widget'svariable a anIntVar , y esa var
iable se establece en 1 cuando el botn est activado y 0 cuando est desactivado. Sin
embargo, puede elegir valores diferentes para los dos estados con theonvalue an
doffvalue opciones, respectivamente.
Usted puede incluso utilizar el botn aStringVar como variable, valores de la cade
na de suministro y de offvalue andonvalue . He aqu un ejemplo:
self.spamVar =tk.StringVar() self.spamCB =tk.Botn(self, texto= 'El Correo no dese
ado? ", variable=self.spamVar, onvalue= 'yes', offvalue= 'no')
si el botn es de, en la misma llamada devolver la cadena "no". Por otra parte, el
programa puede girar el botn de llamada.set( 's'. ; Si este botn est activado, sel
f.spamVar.get() devolver la cadena's'
tambin puede thetextvariable un botn de opcin para aStringVar . A continuacin, puede
cambiar el texto de la etiqueta de que utilizando el botn.set() mtodo de la varia
ble.
Tkinter 154 referencia 8.5 Nuevo Mxico Tech Computer Center

Entrada Conjunto itstextvariable opcin de aStringVar . Utilice dicha variable's .


get() para recuperar el texto que se muestra en el widget. Tambin puede la variab
le's .set() para cambiar el texto que se muestra en el widget.
Etiqueta puede establecer itstextvariable opcin de aStringVar . A continuacin, cua
lquier llamada a la variable's .set() permite cambiar el mtodo el texto que apare
ce en la etiqueta. Esto no es necesario si el texto de la etiqueta es esttico; us
o atributo acumulacin delcampo de las etiquetas que no cambia mientras se ejecuta
la aplicacin.
Menubutton Si desea ser capaz de cambiar el texto que se muestra en el botn de me
n, opcin de aStringVar itstextvariable y utilizar esa variable's .set() mtodo para
cambiar el texto que se muestra.
Radiobutton Labomba opcin debe estar establecida en una variable de control o bie
n anIntVar aStringVar . Todos los botones en un grupo funcional deben compartir

la misma variable de control.


Conjunto elvalor opcin de cada radiobutton en el grupo a un diferente valor. Cada
vez que el usuario establece un radiobutton, la variable se establece en elvalo
r opcin de que radiobutton, y todos los dems ra- diobuttons que comparten el grupo
ser borrado.
Usted podra preguntarse, qu es un grupo de radiobuttons en cuando la variable de co
ntrol nunca se ha definido y el usuario nunca ha seguido en ellos? Cada variable
de control tiene un valor predeterminado:0de IntVar ,0.0 para aDoubleVar , y "p
ara aStringVar . Si uno de los botones ha thatvalue , que radiobutton se ajustar
inicialmente. Si no hay opcin radiobutton'opcin svalue coincide con el valor de la
variable, los botones aparecern a ser borrado.
Si desea cambiar el texto de la etiqueta en un radiobutton durante la ejecucin de
la aplicacin, establezca itstextvariable opcin de aStringVar . A continuacin, el p
rograma puede cambiar el texto de la etiqueta al aprobar el nuevo texto de la et
iqueta de la variable's .set().
Escala de escala widget, itsvariable opcin de una variable de control de cualquie
r clase, y establecer itsfrom_ tooptions y a los valores lmite de los extremos op
uestos de la escala.
Por ejemplo, usted podra utilizar anIntVar y establece la escala'sfrom_=0 y a=100
. A continuacin, cada cambio de usuario al widget, cambiar el valor de la variab
le a un valor entre 0 y 100 inclusive.
El programa tambin puede mover el control deslizante con el.set() en la variable
de control. Para continuar con el ejemplo de arriba, .set(75) se mueva el contro
l deslizante a una posicin de tres cuartas partes del camino a lo largo de su can
al.
Para configurar los valores forfloat aScale widget, utilice aDoubleVar .
Puede utilizar aStringVar como la variable de control de aScale widget. Usted to
dava tendr que proporcionar numericfrom_ andtovalues, pero el valor numrico de la w
idget se convierte en una cadena para el almacenamiento en theStringVar . Utiliz
ar la escala'sdigits opcin para controlar la precisin de esta conver- sion.
53. Atencin: enrutamiento entrada de teclado
para decir un widget tiene el foco de entrada significa que el teclado est dirigi
do a ese widget.
El enfoque transversal, nos referimos a la secuencia de los widgets que sern visi
tados por el usuario se desplaza de un widget a otro con la tecla tabulador. Vea
a continuacin las reglas de esta secuencia.
Puede recorrer hacia atrs con shift-tab.
New Mexico Tech Computer Center Tkinter 8,5 referencia 155

El widgets y texto se destina a aceptar entrada de teclado, y si una entrada o w


idget de texto tiene el foco, los caracteres que escriba ser aadido a su texto. La
habitual edicin de caracteres, as and tendr sus efectos habituales.
BecauseText widgets pueden contener caracteres de tabulacin, se debe usar la llav
e especial control de secuencia de tab para desplazar el foco pasado un widget d
e texto.
La mayora de los otros tipos de widgets normalmente ser visitado por focus travesa
y, cuando se tiene el foco:
los widgets del botn puede ser "pisado" pulsando la barra espaciadora.
Botn widgets se pueden alternar entre estados y borra con la barra espaciadora.
InListbox widgets, the and teclas desplazarse hacia arriba o hacia abajo una lnea;
las teclas AVPG y Repg desplazarse por las pginas, y la barra espaciadora seleccion
a la lnea actual, o de la seleccin, si ya estaba seleccionada.
Se puede establecer aRadiobutton widget pulsando la barra espaciadora.
Responder a los widgets HorizontalScale the and claves y verticales responder to an
d.
En aScrollbar widget, el teclas AVPG y Repg mueve la barra de desplazamiento por p
ageloads. Las teclas y las barras verticales se mover por las unidades, y y despl

azamiento horizontal se mueve por las unidades.


Muchos los widgets son siempre con un esquema llamado la atencin resaltar que ind
ica al usuario que el widget ha resaltado. Esto es por lo general un marco fino
de color negro situado justo fuera de la frontera del widget (si los hay).
Para los widgets que normalmente no tienen un enfoque ms destacado (speciically,
marcos, etiquetas, as como los mens), puede establecer thehighlightthickness opcin
a un valor distinto de cero para hacer resaltar el foco visible.
Tambin puede cambiar el color de la opcin resaltar con thehighlightcolor.
Los widgets de classFrame ,etiqueta , andMenu normalmente no son visitados por e
l foco. Sin embargo, puede establecer las opciones de theirtakefocus1para obtene
r atencin en travesa. Tambin puede tomar cualquier widget fuera de foco de travesa i
tstakefocus opcin a0.
El orden en el que la tecla tab recorre los widgets son:
Para los widgets que son hijos del mismo padre, va en el mismo orden los widgets
creados.
En el caso de padres los widgets que contienen otros widgets (como marcos), se c
oncentran las visitas del padre widget irst (a menos que itstakefocus opcin es0),
luego se visita el nio widgets, recursivamente, en el orden en que se crearon.
En resumen: para configurar el enfoque transversal de tus widgets, crear en ese
orden. Eliminacin de widgets de la travesa de ajuste theirtakefocus opciones para
0, y para las personas cuya opcin defaulttakefocus es0, a1si desea agregar a la o
rden.
El presente documento se describe el funcionamiento del valor predeterminado de
foco de entrada de Tkinter. Hay otra, completamente dife- rentes forma de maneja
r la atencin all donde vaya el ratn va. En la Seccin 26, "mtodos widget Universal" (p
. 97), consulte la.tk_focusFollowsMouse().
Tambin puede agregar, cambiar o eliminar la forma cualquier tecla del teclado fun
ciones dentro de cualquier widget mediante enlaces de eventos. Consulte la Seccin
54, "Eventos" (p. 157) Para obtener ms detalles.
53,1 . Foco en ttk widgets
si se crea un "ttk widget y no se especifica itstakefocus opcin, de forma predete
rminada, todos los widgets ttk recibe el foco excepto forFrame ,etiqueta ,LabelF
rame ,PanedWindow ,Progressbar ,scrollbar ,separador , andSizegrip .
Tkinter 156 referencia 8.5 Nuevo Mxico Tech Computer Center

54. Eventos: en respuesta a los estmulos


Un evento es algo que sucede a su aplicacin como, por ejemplo, el usuario presion
a una tecla o hace clic o arrastra el ratn a que la aplicacin necesita para reacci
onar.
Los widgets normalmente tienen una gran cantidad de comportamientos. Por ejemplo
, un botn, reaccionar a un clic del mouse, llamando itscommand devolucin de llamad
a. En otro ejemplo, si el foco se desplazar a una entrada y pulse una letra, la c
arta se agrega el contenido del widget.
Sin embargo, el enlace de eventos capacidad de Tkinter le permite agregar, cambi
ar o eliminar comportamientos.
En primer lugar, algunos deinitions:
Un evento es una ocurrencia que su aplicacin necesita saber.
Un controlador de eventos es una funcin de la aplicacin que se llama cuando se pro
duce un evento.
Hacemos un llamamiento obligatorio cuando su aplicacin configura un controlador d
e eventos que se llama cuando se produce un evento a un widget.
54.1 . Los niveles de enlace
que puede enlazar un controlador para un evento en cualquier de los tres niveles
:
1. Ejemplo: Se puede enlazar un evento a un speciic widget. Por ejemplo, se pued
en enlazar las teclas Repg clave en un lienzo widget a un controlador que hace qu
e el lienzo desplazarse hasta una pgina. Para enlazar un evento de un widget, lla

me al.bind() mtodo de la widget (vase la Seccin 26, "Universal widget" (p. 97).
Por ejemplo, supongamos que tenemos un widget canvas namedself.canv y desea dibu
jar un blob naranja sobre el lienzo siempre que el usuario hace clic en el botn 2
del ratn (el botn central). Para implementar este comportamiento:
self.canv.bind( ". <Button-2>", Self.__drawOrangeBlob)
El primer argumento es una secuencia Tkinter descriptor que indica que cada vez
que el botn central del ratn va hacia abajo, es para llamar al controlador de even
tos namedself.__drawOrangeBlob . (Consulte la Seccin 54.6 , "escrito su controlad
or: casode clase" (p. 162), a continuacin, para obtener una visin general de cmo es
cribir controladores como.__drawOrangeBlob ). Tenga en cuenta que omitir los pa
rntesis despus del nombre del controlador, por lo que Python se pasa a una referen
cia al controlador en lugar de tratar de llamar enseguida.
2. Clase: Se puede enlazar un evento a todos los widgets de una clase. Por ejemp
lo, puede configurar todos los widgets de botn para responder a botn central del r
atn haga clic en cambiar entre ingls y japons etiquetas. Para enlazar un evento a t
odos los widgets de una clase, llamada la.bind_class() mtodo en cualquier widget
(vase la Seccin 26, "Universal widget" (p. 97), ms arriba).
Por ejemplo, supongamos que tenemos varios lienzos, y desea establecer botn 2 del
ratn para dibujar una naranja blob en cualquiera de ellos. En lugar de tener que
llamar.bind() para cada uno de ellos, puede establecer todos con una llamada al
go as como esto:
self.bind_class( "Canvas", " <Button-2>", Self.__drawOrangeBlob)
3. Aplicacin: Se puede configurar un enlace para que un determinado evento llama
a un controlador no importa widget tiene el foco o est debajo del mouse. Por ejem
plo, se podra obligar a la tecla Impr Pant a todos los widgets de una aplicacin, d
e modo que que imprime la pantalla no importa lo que widget obtiene la clave. Pa
ra enlazar
Nuevo Mxico Tech Computer Center Tkinter 8,5 referencia 157

un evento en el nivel de la aplicacin, llame al.bind_all() mtodo en cualquier widg


et (vase la Seccin 26, "Universal widget" (p. 97).
A continuacin se muestra cmo se pueden enlazar la tecla Impr Pant, cuyo "nombre de
clave" es "Imprimir":
self.bind_all(. <Key-Print>", Self.__printScreen)
54,2 . Las secuencias de sucesos
Tkinter dispone de un potente y mtodo general de lo que le permite deine exactame
nte qu acontecimientos, tanto- ciic y general, que desea enlazar a los controlado
res.
En general, una secuencia de eventos es una cadena que contiene uno o ms eventos.
Cada evento modelo describe una cosa que puede suceder. Si hay ms de un caso pat
rn en una secuencia, el manejador se llama slo cuando todos los patrones en la mis
ma secuencia.
La forma general de un evento es:
<[modifier-]...type[-detail]> Todo el patrn se adjunta inside&lt;...&gt; .
El tipo de evento se describe el tipo general del evento, como presionar una tec
la o hacer clic con el ratn. Consulte la Seccin 54.3, "tipos de eventos" (p. 158).
Puede agregar optionalmodifier temas que tiene ante s el tipo para especificar co
mbinaciones como las teclas Mays o control est deprimido durante otras pulsaciones
de teclas o clics del ratn. Seccin 54.4 , "Event modii- ers" (p. 160) Puede agreg
ar optionaldetail artculos para describir qu tecla o botn del ratn que est buscando.
De botones del ratn, este es de 1 para el botn 1, 2 para el botn 2 o 3 para el botn
3.
El botn configuracin habitual 1 a la izquierda y 3 a la derecha, pero zurdos puede
n intercambiar sus posiciones.
Para las teclas en el teclado, se trata de uno de los caracteres de la clave (en
caso de teclas de caracteres como theAor * llave) o el nombre de la clave; vase
la seccin 54,5 , "nombres clave" (p. 160) Para obtener una lista de todos los nom

bres de las teclas.


Aqu estn algunos ejemplos para darle thelavor patrones de eventos:
<Button-1>El usuario ha pulsado theirst botn del ratn.
<KeyPress-H>El usuario ha pulsado la tecla H.
<Control-Shift-KeyPress-H>El usuario ha pulsado control-shift-H.
54,3 . Tipos de eventos
El conjunto completo de tipos de eventos es bastante grande, pero un gran nmero d
e ellas no se utilizan habitualmente. Aqu estn la mayor parte de los que usted nec
esitar:
Tipo Nombre Descripcin
36 Activar un widget est cambiando de ser inactivo a activo. Esto se refiere a lo
s cambios en el estado de opcin un widget como un botn para cambiar de inactivo (g
ris) en activo.
Tkinter 158 referencia 8.5 Nuevo Mxico Tech Computer Centro

Nombre Tipo Descripcin


4 Botn que el usuario ha pulsado uno de los botones del ratn. Parte speciies Thede
tail que botn. Para soporte para rueda de ratn bajo Linux, useButton-4 (hacia arri
ba) y el botn-5 (desplcese hacia abajo). Bajo Linux, el gestor de rueda de ratn se
debe distinguir entre enlaces de desplazamiento hacia arriba y de desplazamient
o hacia abajo de la num.de encaso ield ejemplo; vase la seccin 54,6 , "Escribir su
handler: La clase de evento" (p. 162).
5 ButtonRelease el usuario deje en un botn del ratn. Esta es probablemente una mej
or opcin en la mayora de los casos de una caso, porque si el usuario accidentalmen
te pulsa el botn, se puede mover el mouse sobre el widget de evitar el establecim
iento de este evento.
22 Configurar el usuario cambia el tamao de un widget, por ejemplo, arrastrar una
esquina o lado de la ventana.
37 Desactivar un widget est cambiando de estar activo a inactivo. Esto se refiere
a los cambios en el estado de un widget como un radiobutton cambia de activo a
inactivo (gris).
17 DestroyA widget est destruida.
7 Introduzca el usuario mueve el puntero del ratn en una parte visible de un widg
et. (Esto es diferente de la tecla enter, que es un evento para aKeyPress cuyo n
ombre es en realidad "retorno" .)
12 exponer este evento se produce cada vez que al menos una parte de su aplicacin
o widget se hace visible despus de haber sido cubierto por otra ventana.
9 FocusInA widget tiene el foco de entrada (vase la Seccin 53, "Focus: teclado de
enrutamiento de put" (p. 155) En una introduccin general al enfoque de entrada.)
Esto puede ocurrir en respuesta a un evento de usuario (como usar la tecla tab p
ara mover el foco entre widgets) o mediante programacin (por ejemplo, el programa
llama al.fo- cus_set() en el widget).
10 FocusOut el foco de entrada se traslad de un widget. Como withFocusIn , el usu
ario puede causar este evento, o si el programa puede causar.
2 Pulsar El usuario ha pulsado una tecla en el teclado. Parte speciies Thedetail
que clave. Esta palabra clave puede ser abbreviatedKey .
Rate release 3 El usuario que de una clave.
8 Deje el usuario mueve el puntero del ratn de un widget.
19 Mapa un widget se asigna, esto es, se ha hecho visible en la aplicacin. Esto o
currir, por ejemplo, cuando se llama al widget's .grid().
6 Movimiento el usuario mueve el puntero del ratn totalmente dentro de un widget.
38 MouseWheel el usuario mueve la rueda del ratn hacia arriba o hacia abajo. En l
a actualidad, este enlace funciona en Windows y MacOS, pero no en Linux. Para Wi
ndows y MacOS, vase el anlisis del delta ield encaso de instancia en la Seccin 54.6
, "escrito su controlador: casode clase" (p. 162). Para Linux, consulte la not
a anterior el botn .
18 No un widget se quita y ya no es visible. Esto sucede, por ejemplo, cuando se

utiliza el widget's .grid_remove().


15 Visibilidad ocurre cuando al menos una parte de la ventana de la aplicacin se
hace visible en la pantalla.
New Mexico Tech Computer Center Tkinter referencia 159

54,4 8,5 . Los modificadores


del evento modiier nombres que se pueden utilizar en las secuencias de sucesos i
ncluyen:
Alt verdadero cuando el usuario es mantener pulsada la tecla alt.
Toda esta modiier generaliza un tipo de evento. Por ejemplo, el caso de patrn <An
y-KeyPress>' Se aplica a la pulsacin de una tecla.
Control verdadero cuando el usuario se mantenga pulsada la tecla de control.
Doble Speciies dos acontecimientos muy cerca en el tiempo. Por ejemplo, <DoubleButton- 1>Describe dos pulsaciones de botn 1 en rpida sucesin.
Bloquear cierto cuando el usuario ha pulsado shift lock.
ShiftTrue cuando el usuario est manteniendo pulsada la tecla mays.
Triple LikeDouble , pero speciies tres eventos en rpida sucesin.
Puede utilizar menos las formas de los eventos. Aqu hay algunos ejemplos:
" &lt; 1 &gt;' es el mismo que' <Button-1>' .
"X" es el mismo como' <KeyPress-x>' .
Tenga en cuenta que puede dejar de lado la enclosing'&lt;... &gt;" para la mayora
de un solo carcter las pulsaciones de teclas, pero no se puede hacer para que el
carcter de espacio (cuyo nombre es" <space>' ) O el menor que ( &lt;) carcter (cu
yo nombre es ". <less>' ).
54,5 . Nombres clave
La parte de detalle de un evento de aKeyPress orKeyRelease speciies evento clave
que est enlazando. (Vase modiier facilit ningn documento, por encima, si desea obte
ner todas las pulsaciones de tecla o).
La tabla siguiente muestra varias diferentes formas de claves de nombre. Consult
e la Seccin 54.6 , "escrito su controlador:
casode clase" (p. 162), a continuacin, para obtener ms informacin onevent objetos c
uyos atributos se describen las teclas de estos mismos medios.
El.keysym columna muestra el "smbolo de la llave", un nombre de cadena para la cl
ave. Este corresponde al .keysym de atributo encaso objeto.
La columna cdigo es el "cdigo de la llave." Esto lo identiique tecla que se ha pul
sado, pero el cdigo no compartan el estado de los distintos modiiers como las tec
las de maysculas y de control y la tecla bloqnum. As, por ejemplo, bothaandAhave e
l mismo cdigo de llave.
El.keysym_num columna muestra un cdigo numrico equivalente al smbolo de la llave. A
diferencia.keycode , estos cdigos son diferentes para diferentes modiiers. Por e
jemplo, el dgito 2 en el teclado numrico (clave symbolKP_2 ) y la flecha hacia aba
jo en el teclado numrico (clave symbolKP_Down ) tienen el mismo cdigo de llave (88
), pero diferentes.keysym_num valores (65433 y 65458, respectivamente).
La "clave" columna muestra el texto que se usuallyind sobre la tecla fsica, tales
como ficha.
Hay muchos ms nombres de juegos de caracteres internacionales. Esta tabla muestra
slo los "Latin-1" de la habitual teclado de 101 teclas. Para el conjunto compati
ble, consulte la pgina del manual de los conocimientos tradicionales de los EE.UU
keysym valores tipo 10 .
Tkinter 10:160 8,5 referencia Nuevo Mxico Tech Computer Center

.keysym.keycode.keysym_num
Alt_L Clave 64 65513 La izquierda tecla alt Alt_R 113 65514 La derecha tecla alt

BackSpace22 65288 65387 retroceso Cancelar110 Caps_Lock66 65549 bloque maysculas


Control_L37 65507 El mando de la izquierda tecla Control_R109 65508 El control
de la derecha tecla Borrar107 65535 65364 104 Suprimir final 103 final escapar9
65367 65307 65378 esc Ejecutar111 SysReq
67 65470 F1 tecla de funcin F1 F2 68 65471 tecla de funcin F2 Fi 66+i +i65469Fi te
cla de funcin
F12 96 65481 tecla de funcin F12 Casa casa 97 65360 65379 insertar Insertar106 Iz
quierda 100 65361 106 Salto Salto54 (control-J) KP_0 90 65438 0 del teclado KP_1
87 65436 1 en el teclado numrico KP_2 88 65433 2 En el teclado KP_3 89 65435 3 e
n el teclado KP_4 83 65430 4 en el teclado KP_5 84 65437 5 en el teclado numrico
KP_6 65432 85 6 en el teclado KP_7 65429 79 7 en el teclado KP_8 80 65431 8 en e
l teclado numrico KP_9 81 65434 9 en el teclado numrico KP_Add86 65451 + en el tec
lado numrico KP_Begin84 65437 La tecla central (la misma clave, 5) en el teclado
numrico KP_Decimal91 65439 decimal ( .) en el teclado numrico KP_Delete91 65439 el
iminar en el teclado KP_Divide112 65455 /en el teclado KP_Down88 65433 en el tec
lado KP_End87 65436 final en el teclado
Nuevo Mxico Tech Computer Center Tkinter referencia 161 8,5

.keysym.keycode.keysym_num
KP_Enter108 65421 Clave introduzca en el teclado KP_Home79 65429 Casa en el tecl
ado KP_Insert90 65438 insertar en el teclado KP_Left83 65430 en el teclado KP_Mu
ltiply 63 65450 sobre el teclado KP_Next89 65435 AVPG del teclado KP_Prior81 6543
4 Repg del teclado KP_Right85 65432 en el teclado KP_Subtract 82 65453 -en el tec
lado
KP_Up 80 65431 en el teclado siguiente AVPG Num_Lock 105 65366 77 110 65407 65299
NumLock Pausa pausa Imprimir 111 65377 99 65365 PrintScrn Antes Repg Volver36 65
293 la tecla intro (control-M). El name (nombre del ratn se refiere a un evento
relacionado con la pulsacin de una tecla, no; vase la Seccin 54, los "eventos" (p.
157)
Derecho 102
78 65363 65300 Scroll_Lock Bloqdespl Shift_L50 65505 El cambio a la izquierda te
cla Shift_R62 65506 El cambio a la derecha tecla Tab 23 65289 La tecla tab de 98
65362
54,6 . Escribir su handler: casode clase
las secciones anteriores sobre cmo describir lo que los eventos que desea control
ar, y la forma de enlazar.
Ahora nos dirigimos a la escritura del controlador que se llamar cuando el evento
ocurre en realidad.
El manejador se pasa anEvent objeto que describe lo que sucedi. El controlador pu
ede ser una funcin o un mtodo. Aqu est la secuencia de llamada de una funcin regular:
defhandlerName (evento):
y como un mtodo:
defhandlerName (s,evento):
Los atributos de casode objeto pasado al controlador se describen a continuacin.
Algunos de estos atributos se establecen siempre, pero algunos son slo para deter
minados tipos de eventos.
Tkinter 162 referencia 8.5 Nuevo Mxico Tech Computer Center

.char si el evento se relaciona con aKeyPress orKeyRelease para una tecla que pu
blica peridicamente una carcter ASCII, esta cadena se establece en ese personaje.
(De las teclas especiales como eliminar, consulte la.keysym atributo, a continua
cin.) .delta ForMouseWheel eventos, este atributo contiene un nmero entero cuyo si
gno es positivo para desplazarse hacia arriba, negativa a desplazarse hacia abaj
o. En Windows, este valor ser un mltiplo de 120; por ejemplo, 120 significa ir un

paso hacia arriba, y -240 significa desplazarse hacia abajo dos pasos.
En MacOS, se tratar de un mltiplo de 1, as que 1 significa ir un paso hacia arriba,
y -2 significa desplazarse hacia abajo dos pasos. Para Linux soporte para rueda
del ratn, consulte la nota sobre elbotn enlace de eventos en la Seccin 54.3, "tipo
s de eventos" (p. 158).
.Informacin dada el evento fue aConfigure , este atributo se establece en el widg
et de altura en pxeles.
.Cdigo orKeyRelease ForKeyPress eventos, este atributo est establecido en un cdigo
numrico que lo identiique la llave. Sin embargo, no indica que los caracteres de
la clave se producido, de manera que "x" y "X" tienen el mismo valor.cdigo. Para
los posibles valores de esta ield, vase la seccin 54,5 , "los nombres" (p. 160).
.Keysymforkeypress orKeyRelease los acontecimientos que se refieren a una tecla
especial, este atributo se establece en el nombre de la cadena de la clave, por
ejemplo, "previo" para las teclas Repg clave. Vase la seccin 54,5 , "nombres de cla
ve" (p. 160) Para obtener una lista completa de nombres.keysym.
.Keysym_num ForKeyPress orKeyRelease eventos, este se ajusta a un valor numrico d
e la versin.keysym ield. Para las teclas normales que producen un solo carcter, th
isield se establece en el valor de entero de la clave del cdigo ASCII. De las tec
las especiales, consulte la seccin 54.5 , "nombres de claves" (p. 160).
.Num si el evento se relaciona con un botn del ratn, este atributo se establece en
el nmero de botn (1, 2 o 3). Para soporte para rueda de ratn bajo Linux, bindButt
on-4 y elbotn-5 eventos; cuando la rueda del ratn se desplaza hacia arriba, thisie
ld ser de 4 o 5 cuando haya desplazado hacia abajo.
.Serialan entero nmero de serie que se incrementa cada vez que el servidor proces
a una peticin del cliente. Puede utilizar los valores de serie.toind la hora exac
ta secuencia de acontecimientos: aquellos con menores valores ocurrido antes.
.Estado entero describiendo el estado de todas las teclas modiier. Consulte la t
abla de mscaras modiier a continuacin para la interpretacin de este valor.
.Hora Este atributo se establece en un nmero entero que no tiene sentido absoluto
, pero se incrementa cada milisegundo. Esto permite que la aplicacin para determi
nar, por ejemplo, la longitud de tiempo entre dos clics del ratn.
.Escriba un cdigo numrico que describe el tipo de evento. Para la interpretacin de
este cdigo, consulte la seccin 54.3, "tipos de eventos" (p. 158).
.Widgetalways establecido en el widget que caus el evento. Por ejemplo, si el eve
nto fue un clic del ratn que sucedi en un lienzo, este atributo ser el actualCanvas
widget.
.Ancho si el evento se aConfigure , este atributo se establece en el widget del
nuevo ancho en pxeles.
.X Thexcoordinate del ratn en el momento del evento, en relacin a la esquina super
ior izquierda del widget.
.Y Theycoordinate del ratn en el momento del evento, relativa a la esquina superi
or izquierda del widget.
.X_rootthexcoordinate del ratn en el momento del evento, en relacin a la esquina s
uperior izquierda de la pantalla.
.Y_roottheycoordinate del ratn en el momento del evento, en relacin a la esquina s
uperior izquierda de la pantalla.
New Mexico Tech Computer Center Tkinter 8,5 referencia 163

Uso estas mscaras para probar los bits de la.valor de estado para ver qu modiier t
eclas y botones se presiona durante el evento:
Mscara 0x0001 Modiier Cambio.
0X0002 Bloqueo de maysculas.
0X0004 Control.
0X0008 Izquierda alternativa
0x0010 Bloq Num.
0X0080 derecha Alt.
0x0100 botn 1 del ratn.

0X0200 botn 2 del ratn.


0X0400 botn del ratn 3.
Aqu tenemos un ejemplo de un controlador de eventos. En la seccin 54.1 , "niveles
de consolidacin" (p. 157), lo anterior, hay un ejemplo que muestra cmo enlazar el
botn del ratn 2 clics sobre un lienzo namedself.canv a un controlador calledself._
_drawOrangeBlob() . Aqu es que handler:
def__drawOrangeBlob(self, event):
"'Drawsanorangeblobinself.canvwherethemouseis.
"' R=5 #Blobradius self.canv.create_oval(event.x-r, caso.y-r, event.x+r, evento.
y+r, fill= "orange" ),
cuando este gestor se llama, la posicin actual del ratn es(event.x,evento.y) . El.
cre- ate_oval() dibuja un crculo cuyo cuadro delimitador es cuadrado y centrado e
n esa posicin y tiene partes de length2, * r .
54,7 . Truco los argumentos adicionales
a veces le gustara transmitir otros argumentos para un controlador adems del event
o.
Este es un ejemplo. Supongamos que su aplicacin tiene una serie de diez checkbutt
ons los widgets que se almacenan en un listself.cbList , indexado por el botn nmer
o inrange(10) .
Supongamos adems que desea escribir un controlador denominado.__cbHandler para <B
utton-1>Eventos en todos los diez de estos checkbuttons. El controlador puede ob
tener el actualCheckbutton widget que desencaden al referirse a la.widget casode
atributo de objeto que se pasa, pero cmo se ind que ndice de botn s fueron las mejore
s.cbList ?
Sera bueno para escribir nuestro controlador con un argumento extra para el botn nm
ero, algo como esto:
def__cbHandler(self, event, cbNumber):
Pero controladores de eventos slo se pasan un argumento, el evento. Por lo que no
podemos utilizar la funcin anterior debido a una discrepancia en el nmero de argu
mentos.
Afortunadamente, Python la capacidad para proporcionar los valores predeterminad
os de argumentos de la funcin nos da una va de salida. Eche un vistazo a este cdigo
:
8,5 Tkinter referencia 164 Nuevo Mxico Tech Computer Center

def__createWidgets(self):
... self.cbList = [] #Createthecheckbutton foriinrange lista(10):
cb=tk.Botn(self, ... ) self.cbList.append(cb) cb.grid(fila=1, columna=i) defhandl
er(event, auto=self, i=i):
returnself.__cbHandler(event, i) cb.bind( ". <Button-1>', Handler) ... def__cbH
andler(self, event, cbNumber):
...
Estas lneas deine una nueva functionhandler que espera tres argumentos. El primer
argumento es casode objeto que se pasa a todos los controladores de eventos, y
el segundo y el tercer argumento se ajustarn a sus valores por defecto de los arg
umentos adicionales que tiene que pasar.
Esta tcnica se puede extender a cualquier nmero de argumentos adicionales a los co
ntroladores.
54,8 . Eventos virtuales
Usted puede crear su propio nuevos tipos de eventos virtuales. Usted puede darle
s el nombre que desee, siempre que se adjunta en doble pares of&lt;&lt; ... &gt;
&gt; .
Por ejemplo, supongamos que desea crear un nuevo evento llamado&lt; <panic>&gt;
, Que se pone en marcha a travs de botn del ratn 3 o mediante la tecla de pausa. Pa
ra crear este evento, llame a este mtodo en cualquier widgetw:
w.event_add( "&lt; <panic>&gt; ', ' <Button-3>', ' <KeyPress-Pause>')
A continuacin, puede utilizar"&lt; <panic>&gt;' En cualquier secuencia de evento

s. Por ejemplo, si usar esta llamada:


w.bind( "&lt; <panic>&gt; ', h)
cualquier botn del ratn 3 o pausa en keypress widgetwwill activar el handlerh.
Ver.event_add() , .event_delete() , y.event_info() en la Seccin 26, "Universal wi
dget" (p. 97) Para obtener ms informacin sobre cmo crear y administrar eventos virt
uales.
55. Los dilogos emergentes
Tkinter ofrece tres mdulos que se pueden crear pop-up ventanas de dilogo para uste
d:
En la seccin 55.1 , "ThetkMessageBox mdulo dilogos" (p. 165), ofrece una variedad d
e pop-ups para tareas sencillas.
En la seccin 55,2 , "ThetkFileDialog mdulo" (p. 167), permite al usuario explorar
foriles.
En la seccin 55,3 , "ThetkColorChooser mdulo" (p. 168), permite al usuario selecci
onar un color.
55.1 . Dilogos ThetkMessageBox mdulo
una vez importar thetkMessageBox mdulo, usted puede crear cualquiera de estos sie
te tipos comunes de men emergente al llamar a las funciones de esta tabla.
New Mexico Tech Computer Center Tkinter referencia 165 8,5

.askokcancel( ttulo,mensaje,opciones)
.askquestion( ttulo,mensaje,opciones)
.askretrycancel( ttulo,mensaje,opciones)
.askyesno( ttulo,mensaje,opciones)
.showerror( ttulo,mensaje,opciones)
.showinfo( ttulo,mensaje,opciones)
.showwarning( ttulo,mensaje,opciones)
en cada caso, thetitle es una cadena que se va a mostrar en la parte superior de
la decoracin de la ventana. Elmensaje argumento es una cadena que aparece en el
cuerpo de la ventana emergente; dentro de esta cadena, las lneas rotas en caracte
r de nueva lnea ( ' \n' ) caracteres.
Theoption argumentos pueden ser cualquiera de estas opciones.
botn predeterminado que debe ser la opcin por defecto? Si no se especifica esta op
cin, theirst botn ( "OK", "S", o "Retry") ser la opcin por defecto.
Para especificar qu botn es la opcin predeterminada, usedefault=C, whereCis uno de
estas constantes deined intkMessageBox :CANCELAR ,IGNORAR ,OK,NO,REINTENTAR , or
YES .
icono icono que aparece selecciona en el men emergente. Utilizar un argumento del
formicon=IwhereIis uno de estos constantes deined intkMessageBox :ERROR ,INFORM
ACIN ,PREGUNTA , orWARNING .
padre si no especifica esta opcin, el pop-up aparece por encima de la ventana raz.
Para hacer que el pop-up aparecer por encima de un nio windowW, utilice el argume
ntparent=W.
Cada uno de the"ask... " Pop-up funciones devuelve un valor que depende de que e
l usuario presiona botn para eliminar los pop-up.
Tkinter 166 referencia 8.5 Nuevo Mxico Tech Computer Center

askokcancel ,askretrycancel , andaskyesno todos volver abool valor:True para "ACE


PTAR" o "S" opciones,False para "No" o "Cancelar" opciones.
Askquestion returnsu's' para "S", "no oru" para "No".
55,2 . Mdulo ThetkFileDialog
ThetkFileDialog mdulo ofrece dos diferentes pop-up windows se puede utilizar para
proporcionar al usuario la capacidad toind existingiles o crear newiles.
.Askopenfilename( option=value,...) para los casos en los que el usuario desea s

eleccionar una ile. Si el usuario selecciona un inexistente ile, aparecer un cuad


ro emergente informndoles que el selectedile no existe.
.Asksaveasfilename( option=value,...) para los casos en los que el usuario desea
crear una nueva regin ile o sustituya una ile. Si el usuario selecciona un exist
ingile, un pop-up aparecer theile informa de que ya existe, y que si realmente qu
ieren cambiarlo.
Los argumentos de ambas funciones son las mismas:
defaultextension defaultile= s la extensin, una cadena a partir de un punto ( " .
" ). Si la respuesta del usuario contiene un perodo, este argumento no tiene ef
ecto. Es anexado a la respuesta en caso de que no haya ningn tiempo.
Por ejemplo, si usted oferta adefaultextension= " .jpg" argumento y que el usuar
io escribe "gojiro", el nombre returnedile ser'gojiro.jpg".
filetypes= [( label1, patrn 1) , (label2, patrn 2), ... ] una lista de dos element
os de tuplas que contienen nombres de tipo isla y patrones que se seleccione lo
que aparece en listado theile. En la imagen de la pantalla a continuacin, la nota
del men desplegable etiqueta"Archivos de tipo: ". Los tipos de argumento que us
ted va a rellenar esta lista desplegable. Ile Eachpattern es un nombre del tipo
( "PNG" en el ejemplo) y un patrn que selecciona iles, de un tipo determinado ( "
( .png)" en el ejemplo).
initialdir= D El nombre de la ruta de acceso del directorio que se muestra al pr
incipio. El directorio predeterminado es el directorio de trabajo actual.
initialfile= F Theile nombre que se va a mostrar en un principio en el "nombre d
e archivo: "ield, si la hubiere.
padre=W para que el mensaje emergente de algunos windowW, suministro de este arg
umento. El comportamiento predeterminado es que el pop-up aparecer sobre su venta
na raz de la aplicacin.
title=T Si propsitos especi cos,Tis una cadena que se va a mostrar en la ventana e
mergente del ttulo.
Si el usuario selecciona aile, el valor devuelto es el nombre de ruta completo d
el selectedile. Si el usuario utiliza el botn Cancelar, la funcin devuelve una cad
ena vaca.
Este es un ejemplo:
New Mexico Tech Computer Center Tkinter referencia 167

55,3 8,5 . Mdulo ThetkColorChooser


dar a su usuario de la aplicacin una ventana emergente que puede utilizar para se
leccionar un color, importacin mdulo thetkColorChooser y llamar a esta funcin:
resultado=tkColorChooser.askcolor( color,option=value,...)
Los argumentos son: el
color El color inicial que se va a mostrar. El valor predeterminado inicial es u
n color gris claro.
title=texto La speciiedtext aparece en la ventana emergente del rea de ttulo. El tt
ulo predeterminado es "Color".
padre=W que aparecen en el men emergente windowW. El comportamiento predeterminad
o es que aparece en la ventana raz.
Si el usuario hace clic en el botn Aceptar de la ventana emergente, el valor devu
elto ser una tupla(triple,color), wheretriple es una tupla(R,G,B)que contiene val
ores de rojo, verde y azul en el intervalo [0.255 ], respectivamente, se produce
el color seleccionado como Tkinter objeto color.
Si el usuario hace clic en Cancelar, esta funcin devolver(None,None) .
Esto es lo que el aspecto emergente en el sistema del autor:
8,5 Tkinter referencia 168 Nuevo Mxico Tech Computer Center

También podría gustarte