ページの先頭行へ戻る
WSMGR for Web V7.2 使用手引書L10

23.4.4 fieldオブジェクト

エミュレータ画面のフィールド情報を参照、および操作するためのオブジェクトです。fieldオブジェクトを使用するには、screenオブジェクトのFindFieldメソッドでオブジェクトの取得が必要です。

メソッド名

機能

Next

次のfieldオブジェクトを取得

Prev

前のfieldオブジェクトを取得

GetColor

フィールドカラー値の取得

GetStartPos

フィールド開始位置の取得

GetEndPos

フィールド終了位置の取得

GetString

フィールド文字列の取得

IsBlink

ブリンクフィールドの判定

IsNumeric

数字フィールドの判定

IsProtected

保護フィールドの判定

IsReverse

反転フィールドの判定

IsUnderScore

下線フィールドの判定

IsVisible

可視フィールドの判定

SetAssist

入力フィールドをアシスト属性へ変更

■Next

次のfieldオブジェクトを取得

現在のフィールドの次のフィールドから、fieldオブジェクトを取得します。


●呼び出し形式

Next()

●パラメータ

ありません

●リターン値

関数の呼び出しに成功すると次のfieldオブジェクトを返します。現在のフィールドが最終フィールドで、次のフィールドが存在しない場合nullを返します。


●JavaScriptを用いて記述した例

var Dspemu = new WsmgrDspemu();  // インスタンスの作成

var field = Dspemu.screen.FindField("ユーザID");  // 文字列「ユーザID」を含むfiledオブジェクトを取得
var nextfield = field.Next();                        // 上記の次のオブジェクトを取得

■Prev

前のfieldオブジェクトを取得

現在のフィールドの前のフィールドから、fieldオブジェクトを取得します。


●呼び出し形式

Prev()

●パラメータ

ありません

●リターン値

関数の呼び出しに成功すると前のfieldオブジェクトを返します。現在のフィールドが先頭フィールドで、前のフィールドが存在しない場合nullを返します。


●JavaScriptを用いて記述した例

var Dspemu = new WsmgrDspemu();  // インスタンスの作成

var field = Dspemu.screen.FindField("ユーザID");  // 文字列「ユーザID」を含むfiledオブジェクトを取得
var prevfield = field.Prev();                        // 上記の前のオブジェクトを取得

■GetColor

フィールドカラー値の取得

フィールドより表示カラーの値を取得します。


●呼び出し形式

GetColor()

●パラメータ

ありません

●リターン値

関数の呼び出しに成功するとカラーを示す値の文字列を返します。

返却される文字列

説明

Default

背景色(初期値)

Bule

Red

Magenta

マゼンタ

Green

Cyan

シアン

Yellow

white


●JavaScriptを用いて記述した例

var Dspemu = new WsmgrDspemu();  // インスタンスの作成

var field = Dspemu.screen.FindField("ユーザID");  // 文字列「ユーザID」を含むfiledオブジェクトを取得
var color = field.GetColor();                        // 上記のカラー値を取得

■GetStartPos

フィールド開始位置の取得

フィールドの開始位置のアドレスを取得します。


●呼び出し形式

GetStartPos()

●パラメータ

ありません

●リターン値

関数の呼び出しに成功するとフィールドの開始位置のアドレスを返します


●JavaScriptを用いて記述した例

var Dspemu = new WsmgrDspemu();  // インスタンスの作成

var field = Dspemu.screen.FindField("ユーザID");  // 文字列「ユーザID」を含むfiledオブジェクトを取得
var addr = field.GetStartPos();                    // フィールドの開始位置を取得

■GetEndPos

フィールド終了位置の取得

フィールドの終了位置のアドレスを取得します。


●呼び出し形式

GetEndPos()

●パラメータ

ありません

●リターン値

関数の呼び出しに成功するとフィールドの終了位置のアドレスを返します。


●JavaScriptを用いて記述した例

var Dspemu = new WsmgrDspemu();  // インスタンスの作成

var field = Dspemu.screen.FindField("ユーザID");  // 文字列「ユーザID」を含むfiledオブジェクトを取得
var addr = field.GetEndPos();                    // フィールドの終了位置を取得

■GetString

フィールド文字列の取得

フィールドの文字列を取得します。


●呼び出し形式

GetString()

●パラメータ

ありません

●リターン値

関数の呼び出しに成功するとフィールドの文字列を返します。


●JavaScriptを用いて記述した例

var Dspemu = new WsmgrDspemu();  // インスタンスの作成

var field = Dspemu.screen.FindField("ユーザID");  // 文字列「ユーザID」を含むfiledオブジェクトを取得
var str = field.GetString();                    // フィールドの文字列を取得

■IsBlink

ブリンクフィールドの判定

フィールドがブリンクフィールドであるかを判定します。


●呼び出し形式

IsBlink()

●パラメータ

ありません

●リターン値

ブリンクフィールドの場合はTRUEを返します。ブリンクフィールド以外の場合はFALSEを返します。


●JavaScriptを用いて記述した例

var Dspemu = new WsmgrDspemu();  // インスタンスの作成

var field = Dspemu.screen.FindField("ユーザID");  // 文字列「ユーザID」を含むfiledオブジェクトを取得
if(field.IsBlink ())                    // ブリンクフィールドかどうか
    Dspemu.macro.MsgBox("フィールドはブリンクフィールドです");

■IsNumeric

数字フィールドの判定

フィールドが数字フィールドであるかを判定します。


●呼び出し形式

IsNumeric()

●パラメータ

ありません

●リターン値

数字フィールドの場合はTRUEを返します。数字フィールド以外の場合はFALSEを返します。


●JavaScriptを用いて記述した例

var Dspemu = new WsmgrDspemu();  // インスタンスの作成

var field = Dspemu.screen.FindField("ユーザID");  // 文字列「ユーザID」を含むfiledオブジェクトを取得
if(field.IsNumeric ())                    // 数字フィールドかどうか
    Dspemu.macro.MsgBox("フィールドは数字フィールドです");

■IsProtected

保護フィールドの判定

フィールドが保護フィールドであるかを判定します。


●呼び出し形式

IsProtected()

●パラメータ

ありません

●リターン値

保護フィールドの場合はTRUEを返します。保護フィールド以外の場合はFALSEを返します。


●JavaScriptを用いて記述した例

var Dspemu = new WsmgrDspemu();  // インスタンスの作成

var field = Dspemu.screen.FindField("ユーザID");  // 文字列「ユーザID」を含むfiledオブジェクトを取得
if(field.IsProtected())                    // 保護フィールドかどうか
    Dspemu.macro.MsgBox("フィールドは保護フィールドです");

■IsReverse

反転フィールドの判定

フィールドが反転フィールドであるかを判定します。


●呼び出し形式

IsReversw()

●パラメータ

ありません

●リターン値

反転フィールドの場合はTRUEを返します。反転フィールド以外の場合はFALSEを返します。


●JavaScriptを用いて記述した例

var Dspemu = new WsmgrDspemu();  // インスタンスの作成

var field = Dspemu.screen.FindField("ユーザID");  // 文字列「ユーザID」を含むfiledオブジェクトを取得
if(field.IsReverse())                    // 反転フィールドかどうか
    Dspemu.macro.MsgBox("フィールドは反転フィールドです");

■IsUnderScore

下線フィールドの判定

フィールドが下線フィールドであるかを判定します。


●呼び出し形式

IsUnderScore()

●パラメータ

ありません

●リターン値

下線フィールドの場合はTRUEを返します。下線フィールド以外の場合はFALSEを返します。


●JavaScriptを用いて記述した例

var Dspemu = new WsmgrDspemu();  // インスタンスの作成

var field = Dspemu.screen.FindField("ユーザID");  // 文字列「ユーザID」を含むfiledオブジェクトを取得
if(field.IsUnderScore())                    // 下線フィールドかどうか
    Dspemu.macro.MsgBox("フィールドは下線フィールドです");

■IsVisible

可視フィールドの判定

フィールドが表示可能なフィールドであるかを判定します。


●呼び出し形式

IsVisible()

●パラメータ

ありません

●リターン値

可視フィールドの場合はTRUEを返します。可視フィールド以外の場合はFALSEを返します。


●JavaScriptを用いて記述した例

var Dspemu = new WsmgrDspemu();  // インスタンスの作成

var field = Dspemu.screen.FindField("ユーザID");  // 文字列「ユーザID」を含むfiledオブジェクトを取得
if(field.IsVisible())                    // 可視フィールドかどうか
    Dspemu.macro.MsgBox("フィールドは可視フィールドです");

■SetAssist

入力フィールドをアシスト属性に変更

入力フィールドを画面のカスタマイズで利用可能なアシスト属性に変更します。


●呼び出し形式

SetAssist(UserFuction, AssistFlag, AssistParam)

●パラメータ

パラメータ

説明

省略時の初期値

UserFunction

フィールドに入力候補を表示するための関数オブジェクト

省略できません

AssistFlag

入力フィールドの表示方法を指定
0:入力アシストなし
1:エミュレータの入力に応じて入力候補を表示
2:エミュレータの画面更新時にプルダウンメニューを表示

0:入力アシストなし

AssistParam

AssistFlagが2の場合にUserFunction呼び出しの引数として渡す値

null

●UserFunctionに指定する関数

フィールドに入力された文字列から入力候補を選択し、SetAssistメソッドに入力候補文字列の配列を戻すための処理を記述してください。

関数名:任意の名前

パラメータ:フィールドに入力された文字列を受け取るための変数

リターン値:フィールドに候補として表示する文字列の配列

●リターン値

関数が成功した場合はTRUEを返します。対象となる入力フィールドが現在のエミュレータ画面上に存在しない、またはパラメータエラーの場合はFALSEを返します。


●JavaScriptを用いて記述した例

var Dspemu = new WsmgrDspemu();  // インスタンスの作成

var field = Dspemu.screen.FindField("商品名");  // 文字列「商品名」を含むfiledオブジェクトを取得
nextfield = field.Next();                       // 「商品名」フィールドの次のフィールドを取得
nextfield.SetAssist(MyAssistFunction, 1);           // フィールドをアシスト属性に変更

// フィールドで入力イベント発生時に入力候補を設定する処理
function MyAssistFunction(inputText) {
     // 入力候補を選択
     if(inputText.indexOf("商") == 0) {
          var data = "商品1,商品2,書品3";
          return data;
     }
}