ruby-****@sourc*****
ruby-****@sourc*****
2008年 10月 13日 (月) 08:36:32 JST
------------------------- REMOTE_ADDR = 222.225.51.171 REMOTE_HOST = URL = http://ruby-gnome2.sourceforge.jp/ja/hiki.cgi?libglade2-tut-mainwindow ------------------------- @@ -29,7 +29,9 @@ ウインドウの右上にある×ボタン(「閉じる」ボタン)がクリックされたらアプリケーションを終了させることにします。 ×ボタンがクリックされると、main_windowはdelete_event Signalを発生させるのでそれを捕捉してHandlerを呼び出します。Signal:にdelete_eventを選択すると、Handlerは自動的に"on_main_window_delete_event"という名前になります。名前を変更しても良いですが、ここではそのまま使います。Addボタンを押してリストにSignalとHandlerを追加します。 -実はこのdelete_event Signalはウィンドウの破棄が決定したことを表すのではなく、ウィンドウを破棄して良いかどうかの意思確認を意味しており、その返事に「はい」と答えた場合、つづいて本当にウィンドウが破棄されることを表すdestroy Signalが発生します。ですので、Signal:でdestroyを選択し直してこれもリストに追加します。 +この"delete_event"はウィンドウマネージャからウィンドウを閉じようとした時に発生するSignalで、X Window Systemのイベントメカニズム由来のため、Handlerの最後で、Signalに対する処理を行ったかどうかを真偽値で返す必要があります。falseを返すとSignalを処理していないとみなされ、つづいて自動的に"destroy" Signalが発生します。trueを返すと処理終わったとみなされ、それ以上何も起こりません。 + +Signal:でdestroyを選択し直してこれもリストに追加します。 {{br}}