require 'tkmove3.rb' include TestBed c = TkCanvas.new.pack testbed( c ) x0, y0 = 150, 100 TkcOval.new(c, x0-4, y0-4, x0+4, y0+4, 'fill'=>'yellow').addtag('center') f = TkFrame.new.pack TkButton.new(f, 'text'=>'addtag_closest', 'command'=>proc{ c.delete('center') c.addtag_closest( 'closest', x0, y0 ) item = c.find_withtag('closest').shift if item != nil item.fill('blue') end TkcOval.new(c, x0-4, y0-4, x0+4, y0+4, 'fill'=>'yellow').addtag('center') c.dtag('closest') }).pack('side'=>'left') Tk.mainloop