0

終了時にユーザーにプロンプ​​トを表示する「終了確認」ダイアログ ボックスを作成しました。「終了」メニューコマンドに正常に接続しましたが、ウィンドウを閉じる (X) ボタンにも接続したいと考えています。これどうやってするの?私は Java Swing の経験があり、このタスクを達成するには、このプロンプトを呼び出すウィンドウ リスナーをフレームに追加する必要がありました。ここでやらなければならないことはありますか?

4

1 に答える 1

1

次のようにします。

require 'fox16'
include Fox

class MyApp < FXMainWindow
  def initialize(app)
    @app = app
    super(app, "Test", :height => 150, :width => 350, :opts=> DECOR_ALL)
    self.connect(SEL_CLOSE, method(:on_close))
  end

  def create
    super
    show(PLACEMENT_SCREEN)
  end

  def on_close(sender, sel, event)
    q = FXMessageBox.question(@app, MBOX_YES_NO, "Sure?", "You sure?")
    if q == MBOX_CLICKED_YES
      getApp().exit(0)
    end
  end
end

FXApp.new do |app|
  MyApp.new(app)
  app.create
  app.run
end
于 2014-01-22T11:57:01.343 に答える