|
インプットフィールドでキー入力を選別するには
インプットフィールドでキー入力を選別するには、キーフックトリガでイベ
ントプロシージャを作成します。
# キーフックのイベントプロシージャのサンプル
# WSEV_KEY_HOOKトリガで設定します。
use mwt;
sub hookop {
my ($object) = @_;
# 何か処理を記述して下さい
$key = mwt::WSDkeyboard_getKey( mwt::WSGIappKeyboard() );
if (($key >= $mwt::WSK_0 && $key <= $mwt::WSK_9 ) ||
($key >= $mwt::WSK_KP_0 && $key <= $mwt::WSK_KP_9) ||
$key == $mwt::WSK_plus || $key == $mwt::WSK_minus ||
$key == $mwt::WSK_BackSpace || $key == $mwt::WSK_Delete ||
$key == $mwt::WSK_Insert || $key == $mwt::WSK_space ||
$key == $mwt::WSK_Up || $key == $mwt::WSK_Down ||
$key == $mwt::WSK_Left || $key == $mwt::WSK_Right ||
$key == $mwt::WSK_Return ){
# 数字キーは処理を通す
return;
}
# それ以外は捨てる
mwt::WSDkeyboard_setKey( mwt::WSGIappKeyboard(), 0);
return;
}
1;
このサンプルは、数字入力のみを行いたいインプットフィールドを実現しま
す。キーボードオブジェクトに対して、getKey() 関数により現在入力され
つつあるキーを選別して、いらないキーの場合、 mwt::WSDkeyboard_setKey(mwt::WSGIappKeyboard(),0) を実行して、
入力キーコードを塗りつぶし、入力がなかったように装います。
Document Release 3.80 for WideStudio ver 3.80, Jan 2005 WideStudio documents index | 目次
|
|