ごとけんです

In message "[ruby-list:18434] Re: [GTK] signal_connect_after"
    on 99/11/05, Yukihiro Matsumoto <matz / netlab.co.jp> writes:
>まつもと ゆきひろです

>実はシグナルには「本物のシグナルハンドラの入るスロット」と
>「『後の』シグナルハンドラの入るスロット」があるんです。両方
>を独立に指定できます。「『後の』シグナルハンドラ」は本物のシ
>グナルハンドラが実行された後でおもむろに実行されます。
># だったはず。info gtk+参照。

# あれ、info がない…

なるほど。以下が "1234" ではなく "1324" を出すわけですね。
ありがとうございました。

  require "gtk"
  window = Gtk::Window.new(Gtk::WINDOW_TOPLEVEL)
  button = Gtk::Button.new('Hello')

  button.signal_connect("clicked"){ print "1" }
  button.signal_connect_after("clicked"){ print "2" }
  button.signal_connect("clicked"){ print "3" }
  button.signal_connect_after("clicked"){ print "4" }

  window.add button
  button.show
  window.show
  Gtk.main

-- gotoken