com.nttdocomo.ui
クラス Canvas

java.lang.Object
  |
  +--com.nttdocomo.ui.Frame
        |
        +--com.nttdocomo.ui.Canvas

public abstract class Canvas
extends Frame

低レベルAPIのための表示面を定義します。 キャンバス クラスは、 低レベル API で使用するフレームクラスです。 キャンバスは、スクロール機能を持ちません。

関連項目:
Panel, Dialog

クラス com.nttdocomo.ui.Frame から継承したフィールド
SOFT_KEY_1, SOFT_KEY_2
 
コンストラクタの概要
Canvas()
          キャンバスオブジェクトを生成します。
 
メソッドの概要
 Graphics getGraphics()
          キャンバスに描画するためのグラフィクスオブジェクトを取得します。
 int getKeypadState()
          キーパッド状態を返すメソッドです。
abstract  void paint(Graphics g)
          キャンバスに表示するために使用するメソッドです。
 void processEvent(int type, int param)
          低レベルイベントが通知されたときに呼ばれるメソッドです。
 void repaint()
          キャンバス全体を再描画することを指示します。
 void repaint(int x, int y, int width, int height)
          キャンバスの一部の矩形領域を再描画することを指示します。
 
クラス com.nttdocomo.ui.Frame から継承したメソッド
getHeight, getWidth, setBackground, setSoftLabel
 
クラス java.lang.Object から継承したメソッド
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

コンストラクタの詳細

Canvas

public Canvas()
キャンバスオブジェクトを生成します。
メソッドの詳細

getGraphics

public Graphics getGraphics()
キャンバスに描画するためのグラフィクスオブジェクトを取得します。 取得されたグラフィックスオブジェクトは初期状態になっています。
[DoJa-1.0]
getGraphicsメソッドを呼び出すたびに新しいオブジェクトを生成するのか、予め 確保したオブジェクトを再使用するのかは機種依存です。
[DoJa-2.0]
getGraphicsメソッドを呼び出すたびに新しいオブジェクトを生成して返します。
戻り値:
キャンバスに描画するためのグラフィクスオブジェクトを返します。

paint

public abstract void paint(Graphics g)
キャンバスに表示するために使用するメソッドです。 このメソッドは、キャンバスが表示されるタイミングで呼び出されます。
[DoJa-1.0]
引数で渡される Graphics オブジェクトは、getGraphics メソッドで獲得した グラフィックスが渡されます。
[DoJa-2.0]
引数で渡される Graphics オブジェクトは、 paint メソッドの呼び出し元が用意して初期化と必要な設定を行ったグラフィックスが渡されます。

引数で渡されたグラフィックスオブジェクトは、アプリケーションプログラマが Graphics.dispose メソッドで破棄してはなりません。 paint メソッドの呼出し元が、機種依存の処理をしたあとで dispose メソッドを呼び出して破棄します。 アプリケーションプログラマが disposeメソッドを呼び出した場合の振舞は、機種依存です。

パラメータ:
g - 描画に使用する Graphics オブジェクトが渡されます。

repaint

public void repaint()
キャンバス全体を再描画することを指示します。

repaint

public void repaint(int x,
                    int y,
                    int width,
                    int height)
キャンバスの一部の矩形領域を再描画することを指示します。 矩形領域は、(x,y)-(x+width-1, y+height-1)で構成される、 幅width, 高さ heightの矩形領域です。
[DoJa-1.0]
この機能をサポートするかどうかは機種依存です。
[DoJa-2.0]
すべての機種がこの機能をサポートしています。
パラメータ:
x - 矩形の左上のX座標を指定します。
y - 矩形の左上のY座標を指定します。
width - 矩形の幅を指定します。
height - 矩形の高さを指定します。
例外:
IllegalArgumentException - 引数 width, height のどちらかまたは両方に 0 未満の値が指定された場合に発生します。

processEvent

public void processEvent(int type,
                         int param)
低レベルイベントが通知されたときに呼ばれるメソッドです。
パラメータ:
type - イベントのタイプが渡されます。
param - イベントのパラメータが渡されます。 パラメータの意味はイベントによって異なります。 パラメータを持たないイベントの場合は、0が渡されます。

getKeypadState

public int getKeypadState()
キーパッド状態を返すメソッドです。

戻り値の各ビットの位置がDisplayクラスで定義されているキーに対応します。 ビットとキーの対応は、1<<(Displayクラスで定義されているキーの値) となり、 MSBが31で、LSBが0に対応します。たとえば、KEY_0 に対応するビットは、ビット0で、 KEY_1に対応するビットは、ビット1です。

  b31                           b2  b1  b0
 +---+---+-------------||------+---+---+---+
 |   |   |                     |   |   |   |
 +---+---+-------------||------+---+---+---+
 

押された状態になっているキーに対応するビットは1に、 押されていない状態になっているキーに対応するビットは、0になっています。

アプリケーションプログラマは、タイマドリブンの処理中で、このメソッドを呼ぶか、 KEY_PRESS_EVENT, KEY_RELEASE_EVENTのイベントが発生したときに、このメソッドを 呼ぶかして、複数のキーの状態を取得します。

キャンバスが表示されている、いないに関わらず、このメソッドを呼び出した場合、 現在のキーパッドの状態が戻り値として返されます。

戻り値:
キーパッド状態を返します。