キーボードショートカットについて

【ご質問】
画面上で、ファンクションキー(F1など)が押された場合に、
画面上の特定のボタンのActionイベントを実行することはできますでしょうか?

【回答】
GuiManagerに対してRawKeyPress等のイベントを設定し、
処理を行う条件にKeycodeを指定することで実現可能です。

{curl 6.0,7.0,8.0 applet}
{curl-file-attributes character-encoding = “shift-jis”}

{let dsp-msg-btn:CommandButton = {CommandButton
                                     label=“メッセージを表示(F1)”,
                                     {on Action do
                                         {popup-message “TEST”}
                                     }
                                 }
}

{let gm:GuiManager = {get-gui-manager}}

{gm.add-event-handler
    {on raw-key-event:RawKeyPress do
        {if raw-key-event.keycode == Keycode.f1 then
            {dsp-msg-btn.take-action}
        }
    }
}

{value
    dsp-msg-btn
}