Los botones biestados son los toggle buttons
require "rubygems"
require "wx"
include Wx
class Ejemplo < App
def on_init
frameEjemplo = Frame.new(nil, -1, "Ejemplo")
bitmap1 = Bitmap.new("rojo.png", BITMAP_TYPE_PNG)
bitmap2 = Bitmap.new("amarillo.png", BITMAP_TYPE_PNG)
tb1 = ToggleButton.new(frameEjemplo, 1, "uno", [20, 20], [40,40])
tb2 = ToggleButton.new(frameEjemplo, 2, "dos", [20, 70], [40,40])
tb3 = ToggleButton.new(frameEjemplo, 3, "tres", [70, 20], [40,40])
tb4 = ToggleButton.new(frameEjemplo, 4, "reset", [70, 70], [50,40])
# seteo como pulsado al boton dos
tb2.set_value(true)
evt_togglebutton(tb1) { | event | estado_del_boton(tb1.get_value)}
evt_togglebutton(tb2) { | event | estado_del_boton(tb2.get_value)}
evt_togglebutton(tb3) { | event | estado_del_boton(tb3.get_value)}
evt_togglebutton(tb4) { | event |
puts "reseteando los botones, set value _NO_ genera un evento 'evt_togglebutton'."
tb1.set_value(false)
tb2.set_value(false)
tb3.set_value(false)
tb4.set_value(false)
}
frameEjemplo.show()
end
def estado_del_boton(bandera)
if bandera
puts "está pulsado"
else
puts "está levantado"
end
end
end
Ejemplo.new.main_loop
require 'RMagick'
include Magick
f = Image.new(50,28) { self.background_color = "yellow" }
f.write("amarillo.png")