Para poder organizar elementos en las ventanas ruby-gnome2 hace uso de los que se conoce como "contenedores". Existen varios tipos de contenedores pero por el momento solo explicare como utilizar los contenedores horizontales y verticales. También utilizare el ejemplo para mostrar como se crean botones y etiquetas.
Contenedores Horizontales
Como su nombre lo indica estos sirven para poder ordenar los elementos de una forma horizontal como se muestra en el siguiente ejemplo:
#!/usr/bin/env ruby
require 'gtk2'
ventana=Gtk::Window.new
ventana.set_title("Titulo Ventana")
ventana.set_default_size(300,300)
ventana.set_window_position(Gtk::Window::POS_MOUSE)
#Creacion de elementos para la ventana
#Creacion de boton 1
boton1=Gtk::Button.new("Boton 1")
#Creacion de boton 2
boton2=Gtk::Button.new("Boton 2")
#Creacion de etiqueta 1
etiqueta1=Gtk::Label.new("Etiqueta 1")
#Creacion de etiqueta 2
etiqueta2=Gtk::Label.new("Etiqueta 2")
#Creacion del contenedor horizontal
contenedorH=Gtk::HBox.new
#Funcion para agregar un elemento al contenedor
contenedorH.pack_start(boton1)
contenedorH.pack_start(etiqueta1)
contenedorH.pack_start(boton2)
contenedorH.pack_start(etiqueta2)
#AHORA QUE SE TIENE EL CONTENEDOR HORIZONTAL CON LOS ELEMENTOS
#ES NECESARIO AGREGAR EL CONTENEDOR A LA VENTANA
ventana.add(contenedorH)
#Se muestra la ventana
ventana.show_all
Gtk.main
El resultado del código anterior sera el siguiente:
Contenedores Verticales.
Ahora un ejemplo para la creación de contenedores verticales
#!/usr/bin/env ruby
require 'gtk2'
ventana=Gtk::Window.new
ventana.set_title("Titulo Ventana")
ventana.set_default_size(300,300)
ventana.set_window_position(Gtk::Window::POS_MOUSE)
#Creacion de elementos para la ventana
#Creacion de boton 1
boton1=Gtk::Button.new("Boton 1")
#Creacion de boton 2
boton2=Gtk::Button.new("Boton 2")
#Creacion de etiqueta 1
etiqueta1=Gtk::Label.new("Etiqueta 1")
#Creacion de etiqueta 2
etiqueta2=Gtk::Label.new("Etiqueta 2")
#Creacion del contenedor vertical
contenedorH=Gtk::VBox.new
#Funcion para agregar un elemento al contenedor
contenedorH.pack_start(boton1)
contenedorH.pack_start(etiqueta1)
contenedorH.pack_start(boton2)
contenedorH.pack_start(etiqueta2)
#AHORA QUE SE TIENE EL CONTENEDOR HORIZONTAL CON LOS ELEMENTOS
#ES NECESARIO AGREGAR EL CONTENEDOR A LA VENTANA
ventana.add(contenedorH)
#Se muestra la ventana
ventana.show_all
Gtk.main
El resultado del codigo anterior es:
#!/usr/bin/env ruby
require 'gtk2'
ventana=Gtk::Window.new
ventana.set_title("Titulo Ventana")
ventana.set_default_size(300,300)
ventana.set_window_position(Gtk::Window::POS_MOUSE)
#Creacion de elementos para la ventana
#Creacion de boton 1
boton1=Gtk::Button.new("Boton 1")
#Creacion de boton 2
boton2=Gtk::Button.new("Boton 2")
#Creacion de etiqueta 1
etiqueta1=Gtk::Label.new("Etiqueta 1")
#Creacion de etiqueta 2
etiqueta2=Gtk::Label.new("Etiqueta 2")
#Creacion del contenedor vertical
contenedorH=Gtk::VBox.new
#Funcion para agregar un elemento al contenedor
contenedorH.pack_start(boton1)
contenedorH.pack_start(etiqueta1)
contenedorH.pack_start(boton2)
contenedorH.pack_start(etiqueta2)
#AHORA QUE SE TIENE EL CONTENEDOR HORIZONTAL CON LOS ELEMENTOS
#ES NECESARIO AGREGAR EL CONTENEDOR A LA VENTANA
ventana.add(contenedorH)
#Se muestra la ventana
ventana.show_all
Gtk.main
El resultado del codigo anterior es:
No hay comentarios:
Publicar un comentario