From: jake kaiden Date: 2011-05-07T21:39:50+09:00 Subject: Re: Ruby Gtk2 and signal_connect method hi Silkmoth, i use gtk2 quite a bit, and have found that the "Gnome 2" section of this forum (under "Misc" on the top right,) is extremely helpful - and is probably a better place to post questions about gtk2. in answer to your question - you could try something like this, which will give you the filename of the file within the event box you click on. i've used images in my example rather than icons, but you should get the idea.... ###### require 'gtk2' win = Gtk::Window.new() @table = Gtk::Table.new(0, 0, false) @left = -1 @top = 0 img0 = Gtk::Image.new("konichiwa.jpeg") #change these, obviously img1 = Gtk::Image.new("ride.png") img2 = Gtk::Image.new("TradyBlix.png") img3 = Gtk::Image.new("arm.png") my_imgs = [img0, img1, img2, img3] my_imgs.collect{|img| ebox = Gtk::EventBox.new() ebox.add(img) ebox.signal_connect("button_press_event"){p img.file} #or something more interesting @left = @left + 1 @top = @top + 1 if @left == 2 #change this, @left = 0 if @left == 2 #and this, to define the number of columns in your table @right = @left + 1 @bottom = @top + 1 @table.resize(@right, @bottom) @table.attach_defaults(ebox, @left, @right, @top, @bottom) } win.add @table win.show_all win.signal_connect("destroy"){Gtk.main_quit} Gtk.main ############## ... -j -- Posted via http://www.ruby-forum.com/.