HT API version 15
iOSAndroidWindows
KeyUpイベントは、キーボードを離した時に発生します。KeyDownイベントを処理開始の契機、KeyUpイベントを処理終了の契機とすることで、ハードウェアによるトリガー操作のような表現をすることができます。
Eventオブジェクトには以下の子オブジェクトが付加されています。
|
型 |
名前 |
説明 |
|---|---|---|
|
Number |
ShiftKey |
Shiftキーが押されている場合は1、それ以外は0 |
|
Number |
CtrlKey |
Ctrlキーが押されている場合は1、それ以外は0 |
|
Number |
AltKey |
Altキーが押されている場合は1、それ以外は0 |
|
String |
Key |
押されたキー |
特殊キーに関しては後述の表を参照してください。
使用例
Function OnKeyDown(e) {
if (e.Key == "G") {
/* Gを押している間、カウントアップを行います */
count = 0;
SetTimer(1.0);
}
}
Function OnKeyUp(e) {
if (e.Key == "G") {
RemoveTimer();
}
}
Function OnTimer(e) {
count++;
print(count);
}
|
キーの種類 |
格納される値 |
|---|---|
| Esc | "ESCAPE" |
| BackSpace | "BACK" |
| ENTER | "RETURN" |
| Space | "SPACE" |
| Insert | "INSERT" |
| Home | "HOME" |
| PageUp | "PRIOR" |
| Delete | "DELETE" |
| End | "END" |
| PageDown | "NEXT" |
| 方向キー左 | "LEFT" |
| 方向キー上 | "UP" |
| 方向キー右 | "RIGHT" |
| 方向キー下 | "DOWN" |
| テンキー 0~9 | "NUMPAD0"~"NUMPAD9" |
| テンキー . | "DECIMAL" |
| テンキー * | "MULTIPLY" |
| テンキー + | "ADD" |
| テンキー / | "DIVIDE" |
| テンキー - | "SUBTRACT" |
| NumLock | "NUMLOCK" |
| F1~F12 | "F1"~"F12" |
| ScrollLock | "SCROLL" |
KeyUpイベントは、Biz/Browserの画面内でキーボードフォーカスがどのオブジェクトにあたっているかで、発生するキー操作の種類や、イベントの送信元となるオブジェクトが決まります。
KeyUpイベントの発生元オブジェクトは、オブジェクトにキーボードフォーカスがあたっている場合、そのオブジェクトが置かれているFormオブジェクトから発生します。キーボードフォーカスがどのオブジェクトにもあたっていない場合、最も上位のFormオブジェクトから発生します。
・文字入力で使用される特殊キー(BackSpaceなど)はIMEの種類やオブジェクトの状態の影響を強く受けるため、KeyUpイベントでは使用しないことを推奨します。
・OSによってシステムキーやショートカットキーとして割り当てられているキーを使用すると操作性の混乱を招きますので使用しないことを推奨します。
・システムキーやショートカットキーとして割り当てられている場合(あるいは将来のために予約されている場合)、KeyUpイベントが発生しない場合があります。
・CapsLockやNumLockなど、キーに固有の意味のあるキーは、操作に混乱を招きますので使用しないことを推奨します。
・KeyUpイベントは、端末やOSが認識したキー操作に対して発生します。これらはキーボードのハードウェアの影響を受けます。ハードウェアによっては、キーの組み合わせによってBiz/BrowserでKeyUpイベントが発生しないことがあります。
・キーによっては、機種によってCtrl、Shift、Altキーと同時に押下したとき、別のキーとして認識されることがあります。これらの特殊なキーを利用する場合、実際に使用するキーボードで、KeyUpイベントが正しく発生することを必ず確認してください。
・ハードウェアとキーの組み合わせによっては、Ctrl、Shift、Altキーと同時に押下したにも関わらず、CtrlKey、ShiftKey、AltKeyが1($TRUE)とならないことがあります。
・キー押下にフォーカスのあたっているオブジェクトの種類により、KeyUpイベントが発生しないことがあります。
・Bluetoothキーボード等の外付けHID機器を使用した場合、OSの設定に寄らず英語配列のキーボードとして認識される場合があります。