概要 †
キーバインド定義XMLはキーイベントに対する処理を定義するXML文書です。特定のレイアウトや、そのレイアウトに配置された特定の部品がフォーカスされている状況に対して、キーイベント処理を定義します。
キーバインド処理の指定方法 †
キーイベント処理はキー操作、実行タイミング、処理内容の組み合わせで指定します。
キー操作 †
キー操作を表す文字列です。"CTRL+C" のように複数のキーの組み合わせを指定可能です。
実行タイミング †
"onkeydown", "onkeypress", "onkeyup" のいずれかのタイミングを指定します。デフォルトは "onkeydown" です。
処理内容 †
以下のいずれかの処理を実行します。また、複数の処理を指定して順番に実行することも可能です。
- フォーカスの移動 (前/後, 先頭/末尾)
- フォーカスの設定
- 部品の状態変更 (有効/無効, 表示/非表示)
- 部品のイベント実行
- JavaScript 関数の実行
導入手順 †
以下の手順で、キーバインド定義XMLを導入できます。
- 画面遷移定義XMLの設定
- キーバインド定義XMLの作成
1. 画面遷移定義XMLの設定 †
- 画面遷移定義XMLにて、loadLayoutより後にキーバインド定義XMLの読み込みを記述します。
キーバインド定義XMLの読み込みには、loadKeyBindingタグを使用します。
定義例 †
1 2 3 4 5 6 7 8 |
|
2. キーバインド定義XMLの作成 †
- キーバインド定義XMLは、キーバインド処理の設定ファイルです。
- マスカットのレイアウト単位に、キーバインド定義XMLを作成してください。
以下の例では、ログインフォームのレイアウトで [Enter] キーをフォーカス遷移に使用します。ただし、フォーカスが送信ボタンにある場合は例外としてボタンの onclick イベントを実行します。
定義例 †
1 2 3 4 5 6 7 8 9 10 11 12 13 |
|
- マスカットフレームワーク 2.0 までと同様に、部品クラスで handleKeyEventメソッドをオーバーライドし、部品の種類ごとのキーイベント処理を定義することも可能です。
記述可能なタグ †
- bind
- component
- default
- disable
- enable
- function
- hide
- keybinding
- maskat-event
- move-focus
- set-focus
- show
キーバインド定義XML における注意事項 †
IEでの制限事項 †
IEでは、Altキーを押した場合、メニューバーにフォーカスが移ってしまいます。そのため、Altキーは利用しないことを推奨します。
例: Alt+Aにアラートをキーバインドした場合、実際にAlt+Aで開いたアラートを閉じると、 メニューバーの「お気に入り」が開いてしまう。
テンキーでのキーバインド †
テンキーでの入力ではキーバインド処理は実行されません。