tkinter.tix — Ampliación de widgets para Tk

Código fuente: Lib/tkinter/tix.py

Obsoleto desde la versión 3.6: Esta ampliación de Tk no está mantenida y no debe ser usada en nuevo código. Use tkinter.ttk en su lugar.


El módulo tkinter.tix (Tk Interface Extension en inglés) proporciona un conjunto abundante de widgets adicionales. Aunque la biblioteca estándar Tk tiene muchos widgets útiles, están lejos de ser completos. La biblioteca tkinter.tix proporciona la mayoría de los widgets comúnmente necesarios que no están en el estándar Tk: HList, ComboBox, Control (alias SpinBox) y una selección de widgets desplazables. tkinter.tix también incluye muchos más widgets que son generalmente útiles en un rango amplio de aplicaciones: NoteBook, FileEntry, PanedWindow, etc; hay más de 40 de ellos.

Con todos estos nuevos widgets, puedes introducir nuevas técnicas de interacción en aplicaciones, creando interfaces de usuario más útiles y más intuitivas. Puedes diseñar tu aplicación al escoger los widgets más apropiados que combinen con las necesidades especiales de tu aplicación y usuarios.

Ver también

Tix Homepage

La página de inicio de Tix. Incluye enlaces a documentación adicional y descargas.

Tix Man Pages

Versión en línea de las páginas del manual y material de referencia.

Tix Programming Guide

Versión en línea del material de referencia del programador.

Tix Development Applications

Aplicaciones de Tix para el desarrollo de programas de Tix y Tkinter. Las aplicaciones de Tide (por Tix Integrated Development Environment en sus siglas de inglés) trabajan bajo Tk o Tkinter, e incluyen TixInspect, un inspector para modificar y depurar aplicaciones Tix/Tk/Tkinter remotamente.

Usando Tix

class tkinter.tix.Tk(screenName=None, baseName=None, className='Tix')

Un widget de alto nivel de Tix que representa generalmente la ventana principal de una aplicación. Tiene un intérprete Tcl asociado.

Las clases en el módulo tkinter.tix heredan de la clases en tkinter. El primero importa el segundo, por lo que para usar tkinter.tix con Tkinter, todo lo que necesitas hacer es importar un módulo. En general, puedes importar tkinter.tix, y reemplazar las invocaciones de alto nivel a tkinter.Tk con tix.Tk:

from tkinter import tix
from tkinter.constants import *
root = tix.Tk()

Para usar tkinter.tix, debes tener los widgets Tix instalados, usualmente junto a tu instalación de los widgets Tk. Para probar tu instalación, intenta lo siguiente:

from tkinter import tix
root = tix.Tk()
root.tk.eval('package require Tix')

Widgets de Tix

Tix introduces over 40 widget classes to the tkinter repertoire.

Widgets Básicos

class tkinter.tix.Balloon

A Balloon that pops up over a widget to provide help. When the user moves the cursor inside a widget to which a Balloon widget has been bound, a small pop-up window with a descriptive message will be shown on the screen.

class tkinter.tix.ButtonBox

The ButtonBox widget creates a box of buttons, such as is commonly used for Ok Cancel.

class tkinter.tix.ComboBox

The ComboBox widget is similar to the combo box control in MS Windows. The user can select a choice by either typing in the entry subwidget or selecting from the listbox subwidget.

class tkinter.tix.Control

The Control widget is also known as the SpinBox widget. The user can adjust the value by pressing the two arrow buttons or by entering the value directly into the entry. The new value will be checked against the user-defined upper and lower limits.

class tkinter.tix.LabelEntry

The LabelEntry widget packages an entry widget and a label into one mega widget. It can be used to simplify the creation of «entry-form» type of interface.

class tkinter.tix.LabelFrame

The LabelFrame widget packages a frame widget and a label into one mega widget. To create widgets inside a LabelFrame widget, one creates the new widgets relative to the frame subwidget and manage them inside the frame subwidget.

class tkinter.tix.Meter

The Meter widget can be used to show the progress of a background job which may take a long time to execute.

class tkinter.tix.OptionMenu

The OptionMenu creates a menu button of options.

class tkinter.tix.PopupMenu

The PopupMenu widget can be used as a replacement of the tk_popup command. The advantage of the Tix PopupMenu widget is it requires less application code to manipulate.

class tkinter.tix.Select

The Select widget is a container of button subwidgets. It can be used to provide radio-box or check-box style of selection options for the user.

class tkinter.tix.StdButtonBox

The StdButtonBox widget is a group of standard buttons for Motif-like dialog boxes.

Selectores de Archivos

class tkinter.tix.DirList

The DirList widget displays a list view of a directory, its previous directories and its sub-directories. The user can choose one of the directories displayed in the list or change to another directory.

class tkinter.tix.DirTree

The DirTree widget displays a tree view of a directory, its previous directories and its sub-directories. The user can choose one of the directories displayed in the list or change to another directory.

class tkinter.tix.DirSelectDialog

The DirSelectDialog widget presents the directories in the file system in a dialog window. The user can use this dialog window to navigate through the file system to select the desired directory.

class tkinter.tix.DirSelectBox

El widget DirSelectBox es similar al cuadro de selección de directorio estándar de Motif(TM). Es generalmente usado para que el usuario escoja un directorio. DirSelectBox guarda los directorios seleccionados recientemente en un widget de cuadro combinado para que puedan ser seleccionados rápidamente de nuevo.

class tkinter.tix.ExFileSelectBox

The ExFileSelectBox widget is usually embedded in a tixExFileSelectDialog widget. It provides a convenient method for the user to select files. The style of the ExFileSelectBox widget is very similar to the standard file dialog on MS Windows 3.1.

class tkinter.tix.FileSelectBox

The FileSelectBox is similar to the standard Motif(TM) file-selection box. It is generally used for the user to choose a file. FileSelectBox stores the files mostly recently selected into a ComboBox widget so that they can be quickly selected again.

class tkinter.tix.FileEntry

The FileEntry widget can be used to input a filename. The user can type in the filename manually. Alternatively, the user can press the button widget that sits next to the entry, which will bring up a file selection dialog.

ListBox jerárquico

class tkinter.tix.HList

The HList widget can be used to display any data that have a hierarchical structure, for example, file system directory trees. The list entries are indented and connected by branch lines according to their places in the hierarchy.

class tkinter.tix.CheckList

The CheckList widget displays a list of items to be selected by the user. CheckList acts similarly to the Tk checkbutton or radiobutton widgets, except it is capable of handling many more items than checkbuttons or radiobuttons.

class tkinter.tix.Tree

The Tree widget can be used to display hierarchical data in a tree form. The user can adjust the view of the tree by opening or closing parts of the tree.

ListBox Tabular

class tkinter.tix.TList

The TList widget can be used to display data in a tabular format. The list entries of a TList widget are similar to the entries in the Tk listbox widget. The main differences are (1) the TList widget can display the list entries in a two dimensional format and (2) you can use graphical images as well as multiple colors and fonts for the list entries.

Gestores de Widgets

class tkinter.tix.PanedWindow

The PanedWindow widget allows the user to interactively manipulate the sizes of several panes. The panes can be arranged either vertically or horizontally. The user changes the sizes of the panes by dragging the resize handle between two panes.

class tkinter.tix.ListNoteBook

The ListNoteBook widget is very similar to the TixNoteBook widget: it can be used to display many windows in a limited space using a notebook metaphor. The notebook is divided into a stack of pages (windows). At one time only one of these pages can be shown. The user can navigate through these pages by choosing the name of the desired page in the hlist subwidget.

class tkinter.tix.NoteBook

The NoteBook widget can be used to display many windows in a limited space using a notebook metaphor. The notebook is divided into a stack of pages. At one time only one of these pages can be shown. The user can navigate through these pages by choosing the visual «tabs» at the top of the NoteBook widget.

Tipos de Imágenes

El módulo tkinter.tix añade:

  • pixmap capabilities to all tkinter.tix and tkinter widgets to create color images from XPM files.

  • Compound image types can be used to create images that consists of multiple horizontal lines; each line is composed of a series of items (texts, bitmaps, images or spaces) arranged from left to right. For example, a compound image can be used to display a bitmap and a text string simultaneously in a Tk Button widget.

Widgets Varios

class tkinter.tix.InputOnly

The InputOnly widgets are to accept inputs from the user, which can be done with the bind command (Unix only).

Gestor de Geometría de Formulario

Además, tkinter.tix mejora a tkinter al proporcionar:

class tkinter.tix.Form

The Form geometry manager based on attachment rules for all Tk widgets.

Comandos Tix

class tkinter.tix.tixCommand

The tix commands provide access to miscellaneous elements of Tix’s internal state and the Tix application context. Most of the information manipulated by these methods pertains to the application as a whole, or to a screen or display, rather than to a particular window.

Para ver las configuraciones actuales, el uso común es:

from tkinter import tix
root = tix.Tk()
print(root.tix_configure())
tixCommand.tix_configure(cnf=None, **kw)

Consulta o modifica las opciones de configuración del contexto de la aplicación Tix. Si no se especifica ninguna opción, retorna un diccionario con todas las opciones disponibles. Si la opción es especificada sin ningún valor, entonces el método retorna una lista describiendo la opción nombrada (esta lista será idéntica a la sublista correspondiente de los valores retornados si no se especifica ninguna opción). Si uno o más pares opción-valor son especificados, entonces el método modifica las opciones dadas para tener los valores dados; en este caso el método retorna una cadena de caracteres vacía. La opción puede ser cualquiera de las opciones de configuración.

tixCommand.tix_cget(option)

Retorna el valor actual de la opción de configuración dada por option. La opción puede ser cualquiera de las opciones configurables.

tixCommand.tix_getbitmap(name)

Localiza un archivo bitmap con el nombre name.xpm o name en uno de los directorios bitmap (véase el método tix_addbitmapdir()). Al usar tix_getbitmap(), puedes evitar codificar directamente los nombres de ruta de los archivos bitmap en tu aplicación. Cuando tiene éxito, retorna el nombre de ruta completo del archivo bitmap, prefijado con el carácter @. El valor retornado puede ser usado para configurar la opción bitmap de los widgets de Tk y Tix.

tixCommand.tix_addbitmapdir(directory)

Tix mantiene una lista de directorios bajo los cuales los métodos tix_getimage() y tix_getbitmap() buscarán archivos de imágenes. El directorio de bitmap estándar es $TIX_LIBRARY/bitmaps. El método tix_addbitmapdir() añade directory a la lista. Al usar este método, los archivos de imagen de una aplicación pueden ser localizados usando el método tix_getimage() o tix_getbitmap().

tixCommand.tix_filedialog([dlgclass])

Retorna el diálogo de selección de archivo que puede ser compartido entre diferentes invocaciones de esta aplicación. Este método creará una widget de diálogo de selección de archivos cuando es invocado la primera vez. Este diálogo será retornado por las subsiguientes invocaciones de tix_filedialog(). Un parámetro dlgclass opcional puede ser pasado como cadena para especificar qué tipo de widget de selección de diálogo es deseado. Las opciones posibles son tix, FileSelectDialog, o tixExFileSelectDialog.

tixCommand.tix_getimage(self, name)

Localiza un archivo de imagen con el nombre name.xpm, name.xbm o name.ppm en uno de los directorios de bitmap (véase el método tix_addbitmapdir() arriba). Si existe más de un archivo con el mismo nombre (pero con diferentes extensiones), entonces el tipo de imagen es escogido de acuerdo a la profundidad del monitor X: las imágenes xbm son escogidas en monitores monocromos e imágenes de color son escogidas en monitores de color. Al usar tex_getimage(), puedes evitar codificar de forma directa los nombres de ruta de los archivos de imagen en tu aplicación. Cuando tiene éxito, este método retorna el nombre de la imagen recién creada, que puede ser usada para configurar la opción image de los widgets Tk y Tix.

tixCommand.tix_option_get(name)

Obtiene las opciones mantenidas por el mecanismo de esquema de Tix.

tixCommand.tix_resetoptions(newScheme, newFontSet[, newScmPrio])

Reinicia el esquema y conjunto de fuentes de la aplicación Tix a newScheme y newFontSet, respectivamente. Afecta sólo a los widgets creados después de esta invocación. Por lo tanto, es mejor invocar al método resetoptions antes de la creación de cualquier widget en una aplicación Tix.

Se le puede dar el parámetro opcional newScmPrio para reiniciar el nivel de prioridad de las opciones de Tk definidas por los esquemas de Tix.

Debido a la manera en que Tk gestiona la opción de la base de datos X, después de que Tix se haya importado e inicializado, no es posible reiniciar el esquema de colores y conjunto de fuentes usando el método tix_config() método. En vez de eso, se debe usar el método tix_resetoptions().