Anda di halaman 1dari 11

Controles grficos en GTK

2S - 2013
GUA DE USO RPIDO
AUTHOR: GONZALO GABRIEL MNDEZ
Introduccio n
En GKT, un control grfico es cualquier elemento que puede ser aadido a una
interfaz (a una ventana, por ejemplo). A continuacin se listan los controles ms
comunes en GTK, cada uno de los cuales es, adems, un GtkWidget. Es decir, puede
ser aadido a mediante las funciones utilizadas en el ejemplo mostrado en clases:
// Ventana del programa
GtkWidget *window;
// Variable para manejar la ubicacin de los objetos que sern aadidos a la ventana
GtkWidget *fixed;
// Variable para representar un botn
GtkButton *button,
// Creacin y configuracin del botn
button = gtk_button_new_with_label("Enviar");
gtk_fixed_put(GTK_FIXED(fixed), button, 100, 100);
gtk_widget_set_size_request(button, 70, 25);

La informacin mostrada a continuacin ha sido tomada de la direccin web
https://developer.gnome.org/gtk3/3.2 que contiene la documentacin oficial en
ingls- sobre GTK y todos sus tipos de datos. En la direccin citada, la informacin
est organizada de tal manera que cada TDA tiene una URL especfica en la que se
detalla su comportamiento. Es decir, por cada TDA se listan, documentadamente, las
funciones que son vlidas para l.

BOTONES
GtkButton

Es el control ms bsico dentro de la categora de botones. Permite al
programador tener en la interfaz un botn que reaccione a ciertos eventos o
seales que son generados por la interaccin del usuario (por ejemplo, el clic
sobre el botn). Las acciones que deben ejecutarse cuando esos eventos ocurran
se deben implementar en funciones callbacks.

En el proyecto parcial, un botn podra ser empleado en la ventana de Aadir
nueva foto para que el usuario guarde la foto una vez que ha terminado de
ingresar la informacin respectiva. En este escenario, la etiqueta del botn sera
algo as como Guardar foto.

En GTK, un GtkButton luce, ms o menos, as:



Ms informacin (ingls): https://developer.gnome.org/gtk3/3.2/GtkButton.html


GtkCheckButton

Un check button se traduce al espaol como casilla de verificacin. Es un
control utilizado normalmente para permitir al usuario hacer selecciones
mltiples de entre un conjunto de varias opciones. Por ejemplo, podra utilizarse
para seleccionar los ingredientes con los que desea ordenar una pizza, como en
el ejemplo de Wikipedia (http://es.wikipedia.org/wiki/Casilla_de_verificaci%C3%B3n):



En el organizador de fotos, los check boxes podran usarse, por ejemplo, cuando
usted desea indicar qu personas aparecen en una fotografa. Podra cargar la
informacin de todas las personas almacenadas en el sistema y seleccionar
quines aparecen en una foto dada.

En GTK, un GtkCheckButton luce, ms o menos, as:


Ms informacin (ingls): https://developer.gnome.org/gtk3/3.2/GtkCheckButton.html

GtkRadioButton

Un radio button, traducido al espaol como botn de opcin o botn de
radio, es a menudo utilizado cuando se desea permitir al usuario elegir una (y
solo una) opcin de un conjunto predefinido de opciones, excluyendo todas las
dems. A continuacin, una imagen de cmo luce un conjunto de opciones
mutuamente excluyentes en un ejemplo utilizado en Wikipedia
(http://es.wikipedia.org/wiki/Bot%C3%B3n_de_opci%C3%B3n):



En GTK, un conjunto de GtkRadioButtons luce, ms o menos, as:


Ms informacin (ingls): https://developer.gnome.org/gtk3/3.2/GtkCheckButton.html


INGRESO DE INFORMACIN
POR TECLADO

GtkEntry

Un GTKEntry es el TDA implementado para representar text boxes, o cajas de
texto. Este tipo de elemento grfico permite al usuario la entrada de
informacin textual para ser usada por el programa. Una caja de texto luce
generalmente as (http://es.wikipedia.org/wiki/Caja_de_texto):



Se recomienda usar una caja de texto cuando solo una lnea es requerida. As,
en el organizador de fotos, este control podra ser utilizado para solicitar al
usuario el ttulo de un nuevo lbum cuando ste es creado.

En GTK, un GtkEntry luce, ms o menos, as:



Ms informacin (ingls): https://developer.gnome.org/gtk3/3.2/GtkEntry.html


GtkTextView

Un GTKTextView es el TDA implementado para representar text areas, o reas
de texto. Este tipo de elemento grfico, al igual que el GtkEntry, permite al
usuario ingresar informacin textual. La diferencia es que en este caso, la
informacin ingresada puede ocupar ms de una lnea.


En el proyecto parcial del curso, este control se puede emplear para recibir del
usuario la descripcin de un lbum o una foto en la respectiva interfaz de creacin.

En GTK, un GtkTextView luce, ms o menos, as:



Ms informacin (ingls): https://developer.gnome.org/gtk3/3.2/GtkTextView.html


CONTROLES PARA LISTAR
VARIOS TEMS
GtkComboBox

Un GTKComboBox sirve para mostrar una lista de varios elementos, entre los
cuales el usuario puede seleccionar uno. En espaol, este control se conoce con
el nombre de Lista desplegable. A continuacin un ejemplo de cmo es
comnmente usado en interfaces grficas:



En el proyecto parcial del curso, este control se puede emplear, por ejemplo,
para mostrar, en la interfaz de bsqueda de las fotos en las que aparece una
persona en particular, una lista de todas las personas que el sistema contiene.
As, al dar elegir a una persona del GtkComboBox, el usuario evitara ingresar
informacin textual que, por supuesto, podra contener errores y retornar
resultados vacos. El GtkComboBox est diseado tambin de tal manera que
pueda reaccionar a ciertos eventos (por ejemplo, se puede indicar qu funcin
callback debe ser ejecutada cuando un nuevo tem es seleccionado).

En GTK, un GtkComboBox luce, ms o menos, as:



Ms informacin (ingls): https://developer.gnome.org/gtk3/3.2/GtkComboBox.html


MENS
GtkMenuBar

Un GtkMenuBar sirve para incluir en las ventanas barras de mens, como las
mostradas a continuacin, que corresponde a la barra de Men de Mozilla
Firefox:



Una barra de men agrupa a varios Mens, que a su vez contienen varios tems
de men (GtkMenuItem). En ocasiones, los mens pueden incluir tambin conos
para hacer ms sencilla la interaccin con el usuario.

En el proyecto parcial del curso, un GtkMenuBar podra estar incluido en la
ventana principal para ofrecer al usuario todas las funcionalidades relacionadas
a:

lbumes: Crear/Eliminar
Fotos: Agregar/eliminar
Personas: Agregar/eliminar
Buscar Fotos: Por fecha, por personas, por lugar, por categora, etc

En GTK, un GtkMenuBar luce, ms o menos, as:



Ms informacin (ingls):
https://developer.gnome.org/gtk3/3.2/GtkMenuBar.html
https://developer.gnome.org/gtk3/3.2/GtkMenuItem.html

CUADROS DE DILOGO
GtkMessageDialog

Un GtkMessageDialog sirve para mostrar al usuario cualquier mensaje. Es un tipo
de ventana que permite comunicacin simple entre el usuario y el sistema. El
tipo cuadro de dilogo ms simple nicamente informa al usuario, es decir que
muestran un texto (y eventualmente objetos grficos) y ofrece la opcin de
cerrar el cuadro. Un ejemplo es un cuadro de error. Existen tambin cuadros de
pregunta o confirmacin, que adems de mostrar informacin ofrecen
alternativas al usuario. La ms sencilla es una opcin binaria como aceptar /
cancelar o permitir / impedir. La siguiente imagen muestra un cuadro de dilogo
(tomada de Wikipedia: http://es.wikipedia.org/wiki/Cuadro_de_di%C3%A1logo):



En el proyecto parcial del curso, los cuadros de dilogo debern utilizarse para
informar al usuario del resultado de sus tareas. Por ejemplo, luego de crear un
lbum, se le deber indicar algo como Su nuevo lbum ha sido creado
exitosamente. Lo mismo deber hacerse en caso de que haya habido errores.

En GTK, un GtkMessageDialog luce, ms o menos, as:



Ms informacin (ingls): https://developer.gnome.org/gtk3/3.2/GtkMessageDialog.html
GtkFileChooserDialog

Un GtkFileChooserDialog (traducido como seleccionador de archivo) sirve para
abrir una ventana que permite al usuario seleccionar un archivo en su
computador. Al abrir un cuadro de dilogo de este tipo, es posible conocer el
nombre del archivo seleccionado (en forma de una cadena de caracteres).
Posteriormente, el programador debe decidir qu hacer con ese nombre de
archivo.

En el proyecto parcial del curso, uno de estos cuadros de dilogo podra ser til
cuando el usuario quiere ingresar una nueva foto al sistema y debe indicar la
ruta donde se encuentra la foto en el computador. En lugar de que l escriba la
ruta y nombre del archivo, se podra incluir un botn que abra un selecci onador
de archivos para que el usuario pueda buscar la foto grficamente.

En GTK, un GtkFileChooserDialog luce, ms o menos, as:



Ms informacin (ingls): https://developer.gnome.org/gtk3/3.2/GtkAppChooserDialog.html

Anda mungkin juga menyukai