Showing changes from revision #0 to #1:
Added | Removed
El control Arrow (Flecha) dibuja la cabeza de una flecha, apuntando a un número de direcciones posibles y con un número de estilos posibles. Puede ser muy útil en un botón en muchas aplicaciones. Al igual que el control Label (Etiqueta), tampoco emite ninguna señal.
Para usar el widget tenemos que hacer una llamada al metodo new de Arrow de la siguiente forma.
flecha = Gtk::Arrow.new(arrow_type, shadow_type)
Los tipos posibles (arrow_type) hay que setearlos usando las siguientes constantes
Gtk::Arrow::LEFT
Gtk::Arrow::RIGHT
Gtk::Arrow::UP
Gtk::Arrow::DOWN
En cuanto a las sombras (shadow_type) los tipos posibles son
Gtk::SHADOW_IN
Gtk::SHADOW_OUT # valor predeterminado
Gtk::SHADOW_ETCHED_IN
Gtk::SHADOW_ETCHED_OUT
joke: le pago un café|cerveza al primero que encuentre las diferencia entre los tipos de sombra. (yo no encontré ninguna)
El siguiente programita muestra un uso posible (en botones) debe notarse que no se definieron señales para los botones, por lo tanto el programa no hace nada.
require 'gtk2' class Mi_app < Gtk::VBox def initialize() super() flecha1 = Gtk::Arrow.new(Gtk::Arrow::LEFT, Gtk::SHADOW_ETCHED_IN) flecha2 = Gtk::Arrow.new(Gtk::Arrow::RIGHT, Gtk::SHADOW_ETCHED_IN) flecha3 = Gtk::Arrow.new(Gtk::Arrow::UP, Gtk::SHADOW_ETCHED_IN) flecha4 = Gtk::Arrow.new(Gtk::Arrow::DOWN, Gtk::SHADOW_ETCHED_IN) bt1 = Gtk::Button.new() bt2 = Gtk::Button.new() bt3 = Gtk::Button.new() bt4 = Gtk::Button.new() bt1.add(flecha1) bt2.add(flecha2) bt3.add(flecha3) bt4.add(flecha4) caja = Gtk::HBox.new(false, 25) caja.pack_start( bt1, false, false, 3) caja.pack_start( bt2, false, false, 3) caja.pack_start( bt3, false, false, 3) caja.pack_start( bt4, false, false, 3) pack_start( caja, false, false, 3) end end if $0 == __FILE__ class Viewer < Gtk::Window def initialize() super() set_title("Flechas") set_window_position(Gtk::Window::POS_CENTER) signal_connect("delete_event") { |i,a| Gtk::main_quit } set_default_size(300, 150) add(Mi_app.new) end end Gtk.init() view = Viewer.new view.show_all Gtk.main() end