1
0
Fork 0
mirror of https://github.com/ruby/ruby.git synced 2022-11-09 12:17:21 -05:00
ruby--ruby/ext/gtk/test5.rb
(no author) f12baed5df This commit was manufactured by cvs2svn to create branch 'RUBY'.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/RUBY@9 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
1998-01-16 12:19:22 +00:00

63 lines
1.5 KiB
Ruby

require 'gtk'
window = Gtk::Window::new(Gtk::WINDOW_TOPLEVEL)
window.set_title("buttons")
window.border_width(0)
box1 = Gtk::VBox::new(FALSE, 0)
window.add(box1)
box1.show
table = Gtk::Table::new(3, 3, FALSE)
table.set_row_spacings(5)
table.set_col_spacings(5)
table.border_width(10)
box1.pack_start(table, TRUE, TRUE, 0)
table.show
button = []
0.upto(8) do |i|
button.push Gtk::Button::new("button"+(i+1))
end
0.upto(8) do |i|
button[i].signal_connect("clicked") do |w|
if button[i+1].visible?
button[i+1].hide
else
button[i+1].show
end
end
button[i].show
end
table.attach(button[0], 0, 1, 0, 1, nil, nil, 0, 0)
table.attach(button[1], 1, 2, 1, 2, nil, nil, 0, 0)
table.attach(button[2], 2, 3, 2, 3, nil, nil, 0, 0)
table.attach(button[3], 0, 1, 2, 3, nil, nil, 0, 0)
table.attach(button[4], 2, 3, 0, 1, nil, nil, 0, 0)
table.attach(button[5], 1, 2, 2, 3, nil, nil, 0, 0)
table.attach(button[6], 1, 2, 0, 1, nil, nil, 0, 0)
table.attach(button[7], 2, 3, 1, 2, nil, nil, 0, 0)
table.attach(button[8], 0, 1, 1, 2, nil, nil, 0, 0)
separator = Gtk::HSeparator::new()
box1.pack_start(separator, FALSE, TRUE, 0)
separator.show
box2 = Gtk::VBox::new(FALSE, 10)
box2.border_width(10)
box1.pack_start(box2, FALSE, TRUE, 0)
box2.show
close = Gtk::Button::new("close")
close.signal_connect("clicked") do
window.destroy
exit
end
box2.pack_start(close, TRUE, TRUE, 0)
close.set_flags(Gtk::CAN_DEFAULT);
close.grab_default
close.show
window.show
Gtk::main()