com.j_phone.ui
クラス FEPControl

java.lang.Object
  |
  +--com.j_phone.ui.FEPControl

public final class FEPControl
extends java.lang.Object

ネイティブシステム内のFEP(Front End Proccessor)を起動して、入力した文字列を取得するためのクラスです。

導入されたバージョン:
JSCL 1.2

メソッドの概要
static FEPControl getDefaultFEPControl()
          唯一のFEPControlインスタンスを取得します。
 java.lang.String getInputText(java.lang.String text, int constraints, int maxSize, boolean isWrapAllowed)
          ネイティブシステムのFEPを起動して、入力された文字列を取得します。
 
クラス java.lang.Object から継承したメソッド
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

メソッドの詳細

getDefaultFEPControl

public static final FEPControl getDefaultFEPControl()
唯一のFEPControlインスタンスを取得します。FEPControlの操作を行うには、このメソッドでインスタンスを取得してください。
戻り値:
FEPControlインスタンス

getInputText

public java.lang.String getInputText(java.lang.String text,
                                     int constraints,
                                     int maxSize,
                                     boolean isWrapAllowed)
ネイティブシステムのFEPを起動して、入力された文字列を取得します。

このメソッドは、ネイティブシステムのFEPを起動して文字入力画面を表示します。 FEPが終了すると、入力された文字列を戻り値として返します。

入力された文字列が、引数constraintsに指定された文字種以外の文字を含んでいる場合は、 引数textに指定された初期表示文字列だけを返します。

引数maxSizeに指定された最大入力文字数がネイティブシステムの許容する最大入力文字数を超えた場合には ネイティブシステム側の最大入力文字数が適用されますので、実際にユーザーが入力できる文字数はネイティブシステムの制限を受けることになります。

引数isWrapAllowedの指定は、constraintsに指定された文字種の改行が有効か無効かを指定するもので、改行が有効な文字種が指定された場合にだけ意味を持ちます。 constraintsに改行が有効な文字種が指定され、かつisWrapAllowedfalseが指定された場合、改行は無効となります。 isWrapAllowedtrueが指定された場合は、改行は有効のままで変更はありません。

スプライトデータを使用して画面を描画する Java アプリケーションがこのメソッドによって FEP を起動すると、 FEPが終了した後に実画面の表示が崩れます(仮想画面とフレームバッファの内容は保たれます)。 そのため、このメソッドが終了した後は、再描画処理を行う必要があります。

Canvasオブジェクトを対象として画面を描画する Java アプリケーションがこのメソッドによって FEP を起動すると、 FEP が終了した後に実画面の表示が崩れます(Canvasオブジェクトの内容は保たれます)。 そのため、このメソッドが終了した後は、Canvasクラスのrepaint()メソッドで再描画処理を行う必要があります。

画面表示を伴うメディアプレイヤーを再生する Java アプリケーションがこのメソッドによって FEP を起動した場合、 メディアプレイヤーの再生画面と文字入力画面の表示が同時に行われるため、画面がちらつくことがあります。 画面のちらつきを回避するためには、このメソッドを呼び出す前にメディアプレイヤークラスの stop()、 または pause() メソッドを呼び出してメディアプレイヤーの再生を停止する必要があります。

FEP 起動時に再生を停止する必要があるメディアプレイヤークラスを以下に示します。

パラメータ:
text - 文字入力画面に初期表示される文字列
constraints - 入力可能な文字種。javax.microedition.lcdui.TextField および com.jblend.micro.lcdui.LocalizedTextField で定義されている入力可能文字種を指定する。 PASSWORDが指定された場合でも、マスク表示などのパスワード入力の動作は行わず、通常の文字入力の動作となる。
maxSize - 最大入力文字数
isWrapAllowed - constraintsに指定された文字種の改行の有効/無効。true または false で指定する。
戻り値:
入力された文字列。
例外:
java.lang.IllegalArgumentException - 以下の場合に発生する
  • 引数 constraints が、サポートしていない文字種の場合
  • 引数 maxSize が、 0 以下の場合
  • 引数 text の長さが、引数 maxSize を超えている場合
  • 引数 text が、引数 constraintsに指定された入力可能な文字種以外の文字を含んでいる場合
  • 引数 isWrapAllowedfalse が指定されていて、かつ引数 textが改行コードを含んでいる場合