Windowsメッセージ割り込み実行指定
oncmd goto/gosub *label,p1
*label : ラベル名 p1 : メッセージID
指定されたウィンドウメッセージが送られた時に、自動的にジャンプする場所を指定します。 oncmdの後に続けて、gotoまたはgosubキーワードを指定してからラベルを記述します。 gotoの場合には、単純なプログラムジャンプ。 gosubの場合はサブルーチンジャンプを行ないます。 goto/gosubキーワードを省略した場合には、gotoキーワードと同等の動作になります。 oncmd命令でラベルを指定すると、それ以降はHSPのウィンドウに対してp1のメッセージが送られた時に*labelで指定したラベルにジャンプします。 oncmd命令は、現在の操作先ウィンドウのみが対象になります。 複数のウィンドウを作成している場合は、 ウィンドウごとにoncmd命令による登録が可能です。 既に登録されているウィンドウメッセージが指定された場合は、以前の登録が無効になります。 また、割り込みの登録は、ウィンドウの初期化とは同期していません。 一度登録された割り込みは、アプリケーションが終了するまで有効になります。 割り込みジャンプは、stop命令および、wait、 await命令で停止している時に割り込みを受け付けてジャンプを行います。 また、割り込みによりジャンプを行なった後はシステム変数iparam、wparam、lparamがセットされます。 割り込みが発生したウィンドウIDは、 ginfo関数により取得することができます。 割り込み要因 | iparam | wparam | lparam --------------------------------------------------------------------- oncmd | メッセージID | wParam | lParam システム変数iparamには、送信されたメッセージIDが代入されます。 また、wparam,lparamはWindowsメッセージとして渡されたパラメータがそのまま格納されています。 割り込みの設定で、 gosubキーワードによるサブルーチンジャンプが発生した場合は、return命令により戻り値を設定することが可能です。 「return 数値」で、ウィンドウプロシージャーが返す値を指定します。 return命令にパラメーターを指定しなかった場合には、デフォルトのウインドゥプロシージャーに処理が渡されます。 イベント割り込み実行の一時的なON/OFFをすることも可能です。 oncmd 0 で一時的に割り込みを停止します。 oncmd 1 で一時停止した割り込みを再開させることができます。
バージョン | 3.6 |
作成日 | 2013/12/09 |
著作者 | onitama |
URL | http://hsp.tv/ |
備考 | ver3.6標準命令 |
タイプ | 内蔵命令 |
グループ | プログラム制御命令 |
対応環境 |
|
hs ファイル | hsphelp\i_prog.hs |