【ご質問】
画面からボタン押下で子画面(ダイアログ(modal?=true))を生成して、子画面の起動を行い、
子画面でESCキーを押下すると子画面のWindowCloseイベントが発生し、子画面が閉じます。
「×」をマウスでクリックした場合は、WindowsCloseイベントを発生させ、
ESCキーを押下した際に、WindowCloseイベントを発生させないようにすることは可能でしょうか。
【回答】
DialogにKeyPressイベントをつけるのではなく、
GuiManager(アプレット全体)にKeyPressイベントを
つけてはどうでしょうか。
{{get-gui-manager}.add-event-handler |
しかし、アプレット全体につけることになるので
他の場所(Dialog以外)でもKeyPressイベントが動きますので
他の場所においてエスケープキーで何か処理させているような
箇所がある場合は注意が必要になります。