Unofficial
"CLDC 1.0
+ MIDP 1.0"
API Reference.
(日本語版)

javax.microedition.lcdui
クラス Command

java.lang.Object
  上位を拡張 javax.microedition.lcdui.Command

public class Command
extends Object

このクラスはアクションイベントに関する情報をカプセル化して運搬するために使用します。 Command オブジェクト自身は実行すべきアクションの振る舞いそのものはカプセル化しません。 Command オブジェクトは実行すべき情報のみを含みます。

Command オブジェクトによるアクションを受け取るリスナーは Screen と関連した CommandListener に定義されています。 Command オブジェクトはユーザーインタフェースにより生成されます。 それらが生成する理由は Command オブジェクト内に含まれている情報によって判定することができます。

Command オブジェクトは特定のアクションを示すために関連付けられたユーザーインタフェースと連動して発生することがあります。 例えば、ソフト・ボタン、メニューアイテム、あるいはその他の直接的なユーザーインタフェースであることもあります。 例えば任意の方向へ傾けることによって対応する Command オブジェクトを発生させるかもしれません。

実装はコマンドの総数によってユーザーインタフェース上の表現および操作方法等が変更することがあります。 例えば、アプリケーションが少ないコマンドを必要とする場合は特定の物理的なキーにマッピングし、より多くのコマンドを必要とする場合はメニューなどユーザーインタフェースを使用するといった構成をとることができます。

Command オブジェクトはラベル、タイプおよびプライオリティの3つの情報を保持しています。 このうちラベルは視覚的な表現に用います。 残りのタイプとプライオリティは Command オブジェクトのセマンティクスとして使用します。 それぞれの要素の詳細は以下のとおりです。

ラベル

Command オブジェクトはラベル文字列を保持します。 ラベル文字列はアプリケーションが対象となるコマンドを実装がユーザーに提示する際に使用します。 例えばラベル文字列をメニューとして表示したり、ソフト・ボタンの近くに表示する際に使用したりするでしょう。 SCREEN 以外のコマンド・タイプについては、設定されたラベルがデバイス上の用意されたより適切なラベルに読み替えられることがあります。 ただし、ラベル文字列の内容は実装によって別の内容に置き換えられることはありません。

タイプ

Command オブジェクトがどのような意味を持って生成されたかを示すのがタイプです。 アプリケーションは Command オブジェクトからタイプを取得して対応する処理を行います。 例えば、コマンド・タイプが「back」であることをアプリケーションが明示した場合、実装はデバイスが標準として提供する「back」に対応するオペレーションスタイルに合わせることができます。 定義されているタイプは、BACKCANCELEXITHELPITEMOKSCREENSTOP です。

プライオリティ

アプリケーションは、同じ Screen オブジェクト内の他の Command オブジェクトとこの Command オブジェクトの相対的な重要性を示すためにプライオリティ値を設定します。 実装はプライオリティ値がより小さい値であるほど重要性が高いと評価します。 実際に設定する値はアプリケーションに委ねられています。 アプリケーションは重要なコマンドほどプライオリティを高く(つまりより小さい値)したり、使用頻度順によって変更したりすることができます。

一般に、実装は最初に Command オブジェクトのタイプに基づいた Command オブジェクトのマッピングを決定し、次にプライオリティ順の Command オブジェクトのマッピングを行います。 これにより、プライオリティの高い同一タイプの Command オブジェクトをユーザーが直接発生させることができるようにソフト・ボタン等に割り当て、プライオリティが低い Command オブジェクトはメニューから呼び出すように割り当てるといった調整を行う機会を得ます。 同じタイプで同じプライオリティの Command オブジェクトを同一の Screen オブジェクトに登録するのは不正なことではありません。 このような登録が行われた場合、実装が順位を決定します。


アプリケーションはいつでもユーザーがスクリーンを移動する手段を提供すべきです。 アプリケーションは Command オブジェクトのリスナーを持っていない Screen オブジェクトを用意することもできます。 しかし、このような Screen オブジェクトはユーザーによって別のスクリーンに移動する手段を提供できないでしょう。 実装はこのような誤ったアプリケーションを停止させることができるような手段を提供すべきです。


フィールドの概要
static int BACK
          以前のスクリーンへ戻るコマンド・タイプを示す定数(=2)です。
static int CANCEL
          現在のスクリーンに対してユーザーが否定を表現するコマンド・タイプを示す定数(=3)です。
static int EXIT
          ユーザーが現在実行中のアプリケーションを終了することを求めるコマンド・タイプを示す定数(=7)です。
static int HELP
          ユーザーが現在のスクリーンに対するヘルプを求めるコマンド・タイプを示す定数(=5)です。
static int ITEM
          現在のスクリーン上の特別なアイテムに特有なコマンド・タイプであることを実装に暗に示す定数(=8)です。
static int OK
          現在のスクリーンに対してユーザーが肯定を表現するコマンド・タイプを示す定数(=4)です。
static int SCREEN
          現在のスクリーンに対応するアプリケーション定義のコマンド・タイプを示す定数(=1)です。
static int STOP
          ユーザーが現在の処理を停止することを求めるコマンド・タイプを示す定数(=6)です。
 
コンストラクタの概要
Command(String label, int commandType, int priority)
          ラベル、タイプおよびプライオリティを受け取ってオブジェクトを構築します。
 
メソッドの概要
 int getCommandType()
          設定されているコマンド・タイプを返します。
 String getLabel()
          設定されているラベルを返します。
 int getPriority()
          設定されているプライオリティを返します。
 
クラス java.lang.Object から継承されたメソッド
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

フィールドの詳細

SCREEN

public static final int SCREEN

現在のスクリーンに対応するアプリケーション定義のコマンド・タイプを示す定数(=1)です。 例えば「ロード」および「セーブ」など等で使用します。

関連項目:
定数フィールド値

BACK

public static final int BACK

以前のスクリーンへ戻るコマンド・タイプを示す定数(=2)です。 実装は以前のスクリーンへの移動処理は提供しません。 アプリケーションが CommandListener インタフェースの commandAction(Command, Displayable) メソッドを実装して処理を提供する必要がある点に注意が必要です。 これは以前のスクリーンがアプリケーションによって意味合いが異なる可能性があるためです。

関連項目:
CANCEL, STOP, 定数フィールド値

CANCEL

public static final int CANCEL

現在のスクリーンに対してユーザーが否定を表現するコマンド・タイプを示す定数(=3)です。 実装はこのコマンドに対応する実装を提供しません。 アプリケーションが CommandListener インタフェースの commandAction(Command, Displayable) メソッドを実装して処理を提供する必要があります。

アプリケーションはこのコマンド・タイプを、現在のスクリーンに入力された内容等に触れずに、以前のスクリーンへ戻るような場合に使用すべきです。 通常、以前のスクリーンへ戻るコマンド・タイプは BACK ですが、このコマンド・タイプは特に否定を示す場合に使用するものです。

関連項目:
BACK, STOP, 定数フィールド値

OK

public static final int OK

現在のスクリーンに対してユーザーが肯定を表現するコマンド・タイプを示す定数(=4)です。 実装はこのコマンドに対応する実装を提供しません。 アプリケーションが CommandListener インタフェースの commandAction(Command, Displayable) メソッドを実装して処理を提供する必要があります。

アプリケーションはこのコマンド・タイプを、現在のスクリーンの表示内容や入力内容を確認し、確定することを意味するような用途に使用すべきです。

関連項目:
CANCEL, 定数フィールド値

HELP

public static final int HELP

ユーザーが現在のスクリーンに対するヘルプを求めるコマンド・タイプを示す定数(=5)です。 実装はこのコマンドに対応する実装を提供しません。 アプリケーションが CommandListener インタフェースの commandAction(Command, Displayable) メソッドを実装して、このコマンド・タイプを受け取った場合にはヘルプを提供する必要があります。

関連項目:
定数フィールド値

STOP

public static final int STOP

ユーザーが現在の処理を停止することを求めるコマンド・タイプを示す定数(=6)です。 実装はこのコマンドに対応する実装を提供しません。 アプリケーションが CommandListener インタフェースの commandAction(Command, Displayable) メソッドを実装して、このコマンド・タイプを受け取った場合には実行中の処理を停止しなければなりません。

このコマンド・タイプは実装に対して、ユーザーの求めに応じて現在実行中の処理を停止する処理をアプリケーションが提供することを暗に示します。 停止対象は時間のかかる演算処理やネットワークを経由したロード処理等を停止させる場合に使用すべきです。 このコマンド・タイプは必ずしも他のスクリーンへの遷移を意味しません。

関連項目:
BACK, CANCEL, 定数フィールド値

EXIT

public static final int EXIT

ユーザーが現在実行中のアプリケーションを終了することを求めるコマンド・タイプを示す定数(=7)です。 実装はこのコマンドに対応する実装を提供しません。 アプリケーションが CommandListener インタフェースの commandAction(Command, Displayable) メソッドを実装して、このコマンド・タイプを受け取った場合にはアプリケーションを終了すべきです。

関連項目:
定数フィールド値

ITEM

public static final int ITEM

現在のスクリーン上の特別なアイテムに特有なコマンド・タイプであることを実装に暗に示す定数(=8)です。 例えば、リストの実装は状況を直ちに把握するためにこの情報を使用することができます。

関連項目:
定数フィールド値
コンストラクタの詳細

Command

public Command(String label,
               int commandType,
               int priority)

ラベル、タイプおよびプライオリティを受け取ってオブジェクトを構築します。 渡されたタイプが BACKCANCELEXITHELPITEMOKSCREENSTOP 以外の場合、IllegalArgumentException を throw します。

パラメータ:
label - 設定するラベル文字列を渡します。
commandType - 構築するタイプを渡します。
priority - コマンドのプライオリティを渡します。
例外:
IllegalArgumentException - 渡されたコマンド・タイプが不正な場合に throw します。
NullPointerException - ラベルに null が指定された場合に throw します。
メソッドの詳細

getLabel

public String getLabel()

設定されているラベルを返します。

戻り値:
設定されているラベルを返します。

getCommandType

public int getCommandType()

設定されているコマンド・タイプを返します。

戻り値:
設定されているコマンド・タイプを返します。

getPriority

public int getPriority()

設定されているプライオリティを返します。

戻り値:
設定されているプライオリティを返します。

Unofficial
"CLDC 1.0
+ MIDP 1.0"
API Reference.
(日本語版)

このAPIリファレンスに記載されている内容は"さかきけい"が Sun Microsystems, Inc や Java Community Process が公開している各種公式資料を元に、独自に調査・編集したものであり、Sun Microsystems, Inc や Java Community Process 等とは一切関係ありません。したがってこのAPIリファレンスに関する問い合わせを関係各社等に対して行うことを固く禁じます。
また、記載された内容には既知か否かに関らず誤りが含まれる可能性があり、一切保証はありません。本APIリファレンスを使用した結果、不利益が生じたとしても"さかきけい"は一切の責任を負いません。
許可無く公開/非公開および Internet/Intranet/LAN を問わず他サイトに転載すること、複写および複製すること、ローカルファイル等に保存することを禁じます。


Copyright© 2001-2002,2005-2009 by KEI SAKAKI.
ALL RIGHTS RESERVED.
無断転載を禁じます。

Unofficial "CLDC 1.1 + MIDP 2.0" API Reference はこちらです。