キーボードのボタン操作を取得する手順を紹介します。
まず、メタキー:Me内で、ボタン押下時に呼び出すサブルーチンを~on~key~downラベルに指定します。
1 2 3 4 |
Me{ /// キーダウン時の処理を定義 ~on~key~down="#KeyDown"; } |
続いて、実際にボタン押下時の処理をプログラムキーとして定義します。
下記サンプルでは、26行目から47行目でボタン押下時の処理を定義し、修飾キーとキーコードを画面に表示しています。
修飾キーは_this%keyModifer、キーコードは_this%keyDownで取得可能です。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 |
Kf(_Keyboard){ Pe{ /*キーステーションが最初に実行するキーセット*/ N(_main); } } K(_main){ Me{ /// キーダウン時の処理を定義 ~on~key~down="#KeyDown"; } /* 表示部 */ U{ R{ C("Modifier:") C(#Modifier) } R{ C("KeyCode:") C(#KeyCode) } } /* 初期ロード時に呼び出されないようXキー設定 */ X /// キーダウン時の処理 Pe(#KeyDown){ (str)m; /// 修飾キーを取得 if(_this%keyModifer&1){ m=m+"Shift"; } if(_this%keyModifer&2){ if(m!=""){ m=m+"+"; } m=m+"Ctrl"; } if(_this%keyModifer&4){ if(m!=""){ m=m+"+"; } m=m+"Alt"; } #Modifier?=m; /// 押されたキーのコードを取得し、画面に表示 #KeyCode?=_this%keyDown; } } |
実行結果
※上記手順でボタン操作を取得するには、ウィンドウがフォーカスを取得している必要があります。