Form.KeyDownイベント

 

KeyDownイベントは、キーボードの押下で発生します。KeyDownイベントをOnKeyDownイベントハンドラで処理することにより、アクセラレータのような挙動を表現することができます。

 

Eventオブジェクトには以下の子オブジェクトが付加されています。

名前

説明

Number

ShiftKey

Shiftキーが押されている場合は1、それ以外は0

Number

CtrlKey

Ctrlキーが押されている場合は1、それ以外は0

Number

AltKey

Altキーが押されている場合は1、それ以外は0

String

Key

押されたキー

特殊キーに関しては後述の表を参照してください。

 

 

使用例

 

Function OnKeyDown(e) {
    if (e.CtrlKey == 1 && e.Key == "G") {
        /* Ctrl+Gを押したときForm2に画面を切り替えます */
        //.Form1.Delete();
        //.Get("Form2.crs");
    }
}

 

 

Keyオブジェクトに格納される値(特殊キー)

 

キーの種類

格納される値

Esc

"ESCAPE"

BackSpace

"BACK"

Tab

"TAB"

ENTER

"RETURN"

変換

"CONVERT"

無変換

"NONCONVERT"

Space

"SPACE"

Insert

"INSERT"

Home

"HOME"

PageUp

"PRIOR"

Delete

"DELETE"

End

"END"

PageDown

"NEXT"

方向キー左

"LEFT"

方向キー上

"UP"

方向キー右

"RIGHT"

方向キー下

"DOWN"

PauseBreak

"PAUSE"

Windowsキー

"LWIN"

Windowsキー

"RWIN"

テンキー 09

"NUMPAD0""NUMPAD9"

テンキー .

"DECIMAL"

テンキー *

"MULTIPLY"

テンキー +

"ADD"

テンキー /

"DIVIDE"

テンキー -

"SUBTRACT"

NumLock

"NUMLOCK"

F1F24

"F1""F24"

ScrollLock

"SCROLL"

 

 

KeyDownイベントは、Biz/Browserの画面内でキーボードフォーカスがどのオブジェクトにあたっているかで、発生するキー操作の種類や、イベントの送信元となるオブジェクトが決まります。

 

KeyDownイベントの発生元オブジェクトは、オブジェクトにキーボードフォーカスがあたっている場合、そのオブジェクトが置かれているFormオブジェクトから発生します。キーボードフォーカスがどのオブジェクトにもあたっていない場合、最も上位のFormオブジェクトから発生します。

 

 

キー操作における優先順序

 

ひとつのキー操作に対して複数の意味が割り当てられている状態で、実際にそのキー操作を行った場合、実行の優先順序は以下のようになっています。

 

1. Tabキー、Shift+Tabキー、またはNextTabKeyプロパティ、PrevTabKeyプロパティに設定されているキー操作は、優先的にフォーカス移動が実行されます。

2. オブジェクト固有のキー操作が実行されます。

3. Button系オブジェクトのAltKeyプロパティに割り当てられているキー操作が実行されます。

4. KeyDownイベントが発生します。

 

1回のキー操作で起こる動作は、フォーカス移動、オブジェクト固有操作、AltKeyプロパティの動作、KeyDownイベント発行のいずれか1つです。

 

 

KeyDownイベント利用時の注意点

 

・文字入力で使用される特殊キー(漢字、無変換、BackSpaceなど)はIMEの種類やオブジェクトの状態の影響を強く受けるため、KeyDownイベントでは使用しないことを推奨します。

 

・システムキー(システムメニュー Alt+Spaceやウィンドウ切り替え Alt+Tabなど)と同じキーを使用すると、操作性の混乱を招きますので使用しないことを推奨します。

 

PrintScreenPauseなど、キーに固有の意味のあるキーは、操作に混乱を招きますので使用しないことを推奨します。

 

KeyDownイベントは、Windowsが認識したキー操作に対して発生します。Windowsのキー操作の認識は、キーボードのハードウェアの影響を受けます。例えば、NumLockキーとScrollLockキーを1個のボタンで兼用してShiftキーで選択している機種もあります。こうしたキーボードでは、Shift+ScrollLockは、発生しません。

 

PauseNumLockなどの特殊キーでは、機種によっては、CtrlShiftAltキーと同時に押下したとき、別のキーとして認識されることがあります。これらの特殊キーを利用する場合、実際に使用するキーボードで、KeyDownイベントが正しく発生することを必ず確認してください。

 

・キー押下にフォーカスのあたっているオブジェクトの種類により、KeyDownイベントが発生しないことがあります。

 

 

Android版における制限

 

Android版に起きましてはキーイベントが発生するオブジェクトや使用可能なキーに制限があります。

詳しくはAndroid版の特徴と制約を参照してください。

 



「オンラインマニュアル」一覧へ戻る
「Bizの宝箱」TOPへ戻る