11.07.2015 Views

Download document (10.35 MB) - Escuela Superior de Informática ...

Download document (10.35 MB) - Escuela Superior de Informática ...

Download document (10.35 MB) - Escuela Superior de Informática ...

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

3.3. Toolkits para Interfaces Gráficas <strong>de</strong> Usuario 69ponentes <strong>de</strong> la estructura <strong>de</strong>pen<strong>de</strong>rán <strong>de</strong>l tipo <strong>de</strong> evento. Algunos valores posibles son:GDK NOTHINGGDK DELETEGDK DESTROYGDK EXPOSEGDK MOTION NOTIFYGDK BUTTON PRESSGDK KEY PRESSGDK KEY RELEASEcomo:Por lo tanto, para conectar una función <strong>de</strong> respuesta a uno <strong>de</strong> estos eventos se usará algog t k s i g n a l c o n n e c t ( GTK OBJECT ( b u t t o n ) ,"button_press_event" ,GTK SIGNAL FUNC ( b u t t o n p r e s s c a l l b a c k ) , NULL) ;Aquí se asume que button es un widget GtkButton. Cada vez que el puntero <strong>de</strong>l ratón seencuentre sobre el botón y éste sea presionado, se llamará a la función button press callback.Esta función pue<strong>de</strong> <strong>de</strong>clararse así:s t a t i c g i n t b u t t o n p r e s s e v e n t ( GtkWidget ∗ widget ,GdkEventButton ∗ event ,g p o i n t e r d a t a ) ;3.3.5 Creación <strong>de</strong> ventanasUn widget <strong>de</strong> GTK+ es un componente <strong>de</strong> interfaz gráfica <strong>de</strong> usuario. Ejemplos <strong>de</strong> widgetsson las ventanas, casillas <strong>de</strong> verificación, botones y campos editables. Los widgets y lasventanas se <strong>de</strong>finen siempre como punteros a una estructura GtkWidget. Esta estructura es untipo <strong>de</strong> datos genérico, utilizado por todos los widgets y ventanas <strong>de</strong> GTK+.Una vez iniciada la biblioteca GTK+, la mayoría <strong>de</strong> las aplicaciones crean una ventanaprincipal. En GTK+, la ventana principal se <strong>de</strong>nomina ventana <strong>de</strong> nivel superior. Las ventanas<strong>de</strong> nivel superior no tienen ventana padre, porque no están contenidas <strong>de</strong>ntro <strong>de</strong> ningunaotra ventana. En GTK+, los widgets tienen lo que se <strong>de</strong>nomina una relación padre/hijo, enla que el widget padre es el contenedor y el widget hijo es el incluido <strong>de</strong>ntro <strong>de</strong> dicho conte-

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!