前のページ次のページ上に戻るホーム SophiaFramework 2.2
SFRBrewStaticControl
読み取り専用のテキストやイメージ画像を表示するレスポンダです。
#include <SFRBrewStaticControl.hpp>
class SFRBrewStaticControl : public SFRBrewControl;
typedef SFRBrewStaticControl&          SFRBrewStaticControlRef;
typedef SFRBrewStaticControl*          SFRBrewStaticControlPtr;
typedef SFRBrewStaticControl**         SFRBrewStaticControlHandle;
typedef const SFRBrewStaticControl     ConstSFRBrewStaticControl;
typedef const SFRBrewStaticControl&    ConstSFRBrewStaticControlRef;
typedef const SFRBrewStaticControl*    ConstSFRBrewStaticControlPtr;
typedef const SFRBrewStaticControl**   ConstSFRBrewStaticControlHandle;

協調図

SFRBrewStaticControl クラスの協調図

解説

読み取り専用のテキストや画像を表示するレスポンダです。 テキスト コントロールと異なり静的コントロール (SFRBrewStaticControl) は、 ユーザーによる文字の入力を受け付けません。テキストが静的コントロールの 長方形領域内に収まりきらない場合、静的コントロールは自動的にスクロールします。 静的コントロールは、テキストの代わりにイメージ画像を表示することも可能です。 読み取り専用のテキストやイメージ画像の表示には、BREW 標準のコントロールである IStatic インターフェイスを使用しています。

注意

SFRBrewStaticControl を使用する場合は、以下の点に注意してください。

  • 常に最前面で使用してください。
  • 親のコンテント領域内で使用してください。

参照

BREW API IStatic

メンバ

コンストラクタ/デストラクタ
public
SFRBrewStaticControl SFRBrewStaticControl クラスのコンストラクタです。
public
~SFRBrewStaticControl SFRBrewStaticControl クラスのデストラクタです。
パブリック関数
public
FocusDown (SFRResponder から継承) 座標上で自分より下に存在するレスポンダにフォーカスを移動します。
public
FocusLeft (SFRResponder から継承) 座標上で自分より左に存在するレスポンダにフォーカスを移動します。
public
FocusNext (SFRResponder から継承) フォーカスを一つ次に進めます。
public
FocusPrevious (SFRResponder から継承) フォーカスを一つ前に戻します。
public
FocusRight (SFRResponder から継承) 座標上で自分より右に存在するレスポンダにフォーカスを移動します。
public
FocusUp (SFRResponder から継承) 座標上で自分より上に存在するレスポンダにフォーカスを移動します。
public
GetAttribute (SFRResponder から継承) アトリビュートを取得します。
public
GetBack (SFRResponder から継承) 子階層のレスポンダのうち検索条件に一致するレスポンダを 後ろから検索します。
public
GetBaseBound (SFRResponder から継承) ベース領域を親レスポンダのコンテント座標系で取得します。
public
GetBaseWorld (SFRResponder から継承) ベース領域を取得します。
public
GetContentBound (SFRResponder から継承) コンテント領域をベース領域の座標系で取得します。
public
GetContentWorld (SFRResponder から継承) コンテント領域を取得します。
public
GetDirector (SFRResponder から継承) 親レスポンダを取得します。
public
GetFocus (SFRResponder から継承) 子階層のレスポンダのうちフォーカスされているレスポンダを取得します。
public
GetFront (SFRResponder から継承) 子階層のレスポンダのうち検索条件に一致するレスポンダを前から検索します。
public
GetIndexBackward (SFRResponder から継承) 同階層のレスポンダのうち自分が背面から数えて何番目かを返します。
public
GetIndexForward (SFRResponder から継承) 同階層のレスポンダのうち自分が前面から数えて何番目かを返します。
public
GetLeft (SFRResponder から継承) グループ化されているレスポンダのうち 自分より前にあるレスポンダで検索条件に一致するレスポンダを検索します。
public
static
GetMargin (SFRBrewControl から継承) ベース領域とコンテント領域のマージンを計算して返します。
public
GetMoveInterval (SFRResponder から継承) MoveUpHandler, MoveDownHandler, MoveLeftHandler, MoveRightHandler に よりレスポンダが移動されるときの移動量を取得します。
public
GetMoveMargin (SFRResponder から継承) Move 関数によりレスポンダが移動されるときに、仮想領域の端から 何ピクセル内側まで移動可能かのマージンを取得します。 またこの設定は、MoveUpHandler, MoveDownHandler, MoveLeftHandler, MoveRightHandler にも 適応されています。
public
GetNext (SFRResponder から継承) 自分より後にあるレスポンダで検索条件に一致するレスポンダを 検索します。
public
GetNthBackward (SFRResponder から継承) 子階層のレスポンダのうち検索条件に一致するレスポンダで 後ろから数えてN番目にあるレスポンダを検索します。
public
GetNthForward (SFRResponder から継承) 子階層のレスポンダのうち検索条件に一致するレスポンダで 前から数えてN番目にあるレスポンダを検索します。
public
GetPrevious (SFRResponder から継承) 自分より前にあるレスポンダで検索条件に一致するレスポンダを 検索します。
public
GetProperties (SFRBrewControl から継承) 現在設定されているコントロール固有のプロパティを返します。
public
GetReference (SFRResponder から継承) ユーザが自由に設定できるリファレンス値を取得します。
public
GetRight (SFRResponder から継承) グループ化されているレスポンダのうち 自分より後にあるレスポンダで検索条件に一致するレスポンダを検索します。
public
GetScrollInterval (SFRResponder から継承) ScrollUpHandler, ScrollDownHandler, ScrollLeftHandler, ScrollRightHandler によりレスポンダの仮想領域がスクロールされるときのスクロール量を取得します。
public
GetStatusEnable (SFRResponder から継承) 応答可能/不可能フラグを取得します。
public
GetStatusFocus (SFRResponder から継承) フォーカス/非フォーカス フラグを取得します。
public
GetStatusTarget (SFRResponder から継承) ターゲット/非ターゲット フラグを取得します。
public
GetStatusVisible (SFRResponder から継承) 可視/不可視フラグを取得します。
public
GetTranslate (SFRResponder から継承) コンテント座標系での仮想領域の原点座標を取得します。
public
GetTravelMargin (SFRResponder から継承) フォーカスされたレスポンダを自動的にコンテント領域内に 移動させるときに、コンテント領域の端から何ピクセル内側に 移動させるかのマージンを取得します。
public
GetType (SFRResponder から継承) タイプを取得します。
public
GetVirtualBound (SFRResponder から継承) 仮想領域をコンテント領域の座標系で取得します。
public
GetVirtualWorld (SFRResponder から継承) 仮想領域を取得します。
public
GoToLine 静的コントロール オブジェクト内を指定の行までスクロールします。
public
Group (SFRResponder から継承) 他のレスポンダとグループ化します。
public
GroupMove (SFRResponder から継承) グループ化されているレスポンダすべてを移動します。
public
GroupScroll (SFRResponder から継承) グループ化されているレスポンダすべての仮想領域をスクロールします。
public
GroupSelect (SFRResponder から継承) グループ化されているレスポンダすべてを最前面に移動させます。
public
GroupStatusEnable (SFRResponder から継承) グループ化されているレスポンダすべてに対して、応答可能/不可能フラグを設定します。
public
GroupStatusVisible (SFRResponder から継承) グループ化されているレスポンダすべてに対して、可視/不可視フラグを設定します。
public
InvalidateBase (SFRResponder から継承) ベース領域内のアップデート領域を登録します。
public
InvalidateContent (SFRResponder から継承) コンテント領域内のアップデート領域を登録します。
public
InvalidateVirtual (SFRResponder から継承) 仮想領域内のアップデート領域を登録します。
public
Invoke (SFRResponder から継承) イベントを送信します。
public
IsScrollable 静的コントロール オブジェクトの長方形領域にテキストが収まっているかを調べます。
public
Move (SFRResponder から継承) レスポンダを移動します。
public
RegisterHandler (SFRHandler から継承) ハンドラを登録します。
public
RegisterIntelligentHandler (SFRResponder から継承) SelectHandler, ClearHandler, FocusUpHandler, FocusDownHandler, FocusLeftHandler, FocusRightHandler をそれぞれ AVK_SELECT, AVK_CLR, AVK_UP, AVK_DOWN, AVK_LEFT, AVK_RIGHT に登録します。
public
RegisterManipulateHandler (SFRResponder から継承) SelectHandler, ClearHandler, FocusNextHandler, FocusPreviousHandler を それぞれ AVK_SELECT, AVK_CLR, AVK_DOWN, AVK_UP に登録します。
public
RegisterMoveHandler (SFRResponder から継承) MoveUpHandler, MoveDownHandler, MoveLeftHandler, MoveRightHandler を それぞれ AVK_2, AVK_8, AVK_4, AVK_6 に登録します。
public
RegisterScrollHandler (SFRResponder から継承) ScrollUpHandler, ScrollDownHandler, ScrollLeftHandler, ScrollRightHandler を それぞれ AVK_2, AVK_8, AVK_4, AVK_6 に登録します。
public
RegisterTracer (SFRTracer から継承) トレーサを登録します。
public
Scroll (SFRResponder から継承) 仮想領域をスクロールします。
public
Select (SFRResponder から継承) レスポンダを最前面に移動させます。
public
SetBaseBound (SFRBrewControl から継承) ベース領域を親の相対座標で設定します。
public
SetContentBound (SFRResponder から継承) コンテント領域をベース領域の座標系で設定します。
public
SetFont 静的コントロール オブジェクトのテキストとタイトルのフォントを設定します。
public
SetImage 静的コントロール オブジェクトにイメージ画像を設定します。
public
SetMoveInterval (SFRResponder から継承) MoveUpHandler, MoveDownHandler, MoveLeftHandler, MoveRightHandler に よりレスポンダが移動されるときの移動量を設定します。
public
SetMoveMargin (SFRResponder から継承) Move 関数によりレスポンダが移動されるときに、仮想領域の端から 何ピクセル内側まで移動可能かのマージンを設定します。 またこの設定は、MoveUpHandler, MoveDownHandler, MoveLeftHandler, MoveRightHandler にも 適応されます。
public
SetProperties (SFRBrewControl から継承) コントロール固有のプロパティを設定します。
public
SetReference (SFRResponder から継承) ユーザが自由に設定できるリファレンス値を設定します。
public
SetScrollInterval (SFRResponder から継承) ScrollUpHandler, ScrollDownHandler, ScrollLeftHandler, ScrollRightHandler によりレスポンダの仮想領域がスクロールされるときのスクロール量を設定します。
public
SetStatusEnable (SFRResponder から継承) 応答可能/不可能フラグを設定します。
public
SetStatusFocus (SFRResponder から継承) フォーカス/非フォーカス フラグを設定します。
public
SetStatusTarget (SFRResponder から継承) ターゲット/非ターゲット フラグを設定します。
public
SetStatusVisible (SFRResponder から継承) 可視/不可視フラグを設定します。
public
SetText 静的コントロール オブジェクトにテキストを設定します。
public
SetTextEx 静的コントロール オブジェクトにテキストを追加、または置換します。
public
SetTranslate (SFRResponder から継承) コンテント座標系での仮想領域の原点座標を設定します。
public
SetTravelMargin (SFRResponder から継承) フォーカスされたレスポンダを自動的にコンテント領域内に 移動させるときに、コンテント領域の端から何ピクセル内側に 移動させるかのマージンを設定します。
public
SetVirtualBound (SFRResponder から継承) 仮想領域をコンテント領域の座標系で設定します。
public
SizeToFit テキストの大きさに合わせて、静的コントロール オブジェクトの境界長方形を調整します。 この関数は、現在未実装です。
public
Travel (SFRResponder から継承) 設定された長方形が可視領域に入るように、レスポンダの 仮想領域をスクロールします。
public
Ungroup (SFRResponder から継承) グループ化を解除します。
public
UnregisterHandler (SFRHandler から継承) 登録されているハンドラを削除します。
public
UnregisterTracer (SFRTracer から継承) 登録されているトレーサを削除します。
プロテクト関数
protected
BaseHandler (SFRBrewControl から継承) ベース領域のアップデート時に呼び出されるハンドラです。
protected
ClearHandler (SFRResponder から継承) クリアキーが押されたときのハンドラです。
protected
ContentHandler (SFRBrewControl から継承) コンテント領域のアップデート時に呼び出されるハンドラです。
protected
Control (SFRBrewControl から継承) このコントロールで利用中の SFBControl オブジェクトを取得します。
protected
FocusDownHandler (SFRResponder から継承) 下矢印キーが押されたときのハンドラです。 座標上で自分より下に存在するレスポンダにフォーカスを移動します。
protected
FocusLeftHandler (SFRResponder から継承) 左矢印キーが押されたときのハンドラです。 座標上で自分より左に存在するレスポンダにフォーカスを移動します。
protected
FocusNextHandler (SFRResponder から継承) 下矢印キーが押されたときのハンドラです。 フォーカスを一つ後に移動します。
protected
FocusPreviousHandler (SFRResponder から継承) 上矢印キーが押されたときのハンドラです。 フォーカスを一つ前に移動します。
protected
FocusRightHandler (SFRResponder から継承) 右矢印キーが押されたときのハンドラです。 座標上で自分より右に存在するレスポンダにフォーカスを移動します。
protected
FocusUpHandler (SFRResponder から継承) 上矢印キーが押されたときのハンドラです。 座標上で自分より上に存在するレスポンダにフォーカスを移動します。
protected
GetAppearanceTransparent (SFRResponder から継承) APPEARANCE_TRANSPARENT フラグが設定されているかどうかを取得します。
protected
GetInheriteEnable (SFRResponder から継承) 現在の応答可能/不可能の状態を取得します。
protected
GetInheriteFocus (SFRResponder から継承) 現在のフォーカス/非フォーカスの状態を取得します。
protected
GetInheriteTarget (SFRResponder から継承) 現在のターゲット/非ターゲットの状態を取得します。
protected
GetInheriteVisible (SFRResponder から継承) 現在の可視/不可視の状態を取得します。
protected
GetPropertyClosable (SFRResponder から継承) PROPERTY_CLOSABLE フラグが設定されているかどうかを取得します。
protected
GetPropertyDirect (SFRResponder から継承) PROPERTY_DIRECT フラグが設定されているかどうかを取得します。
protected
GetPropertyMovable (SFRResponder から継承) PROPERTY_MOVABLE フラグが設定されているかどうかを取得します。
protected
GetPropertyScrollable (SFRResponder から継承) PROPERTY_SCROLLABLE フラグが設定されているかどうかを取得します。
protected
GetPropertySelect (SFRResponder から継承) PROPERTY_SELECT フラグが設定されているかどうかを取得します。
protected
GetPropertyTravel (SFRResponder から継承) PROPERTY_TRAVEL フラグが設定されているかどうかを取得します。
protected
MoveDownHandler (SFRResponder から継承) 数字の8キーが押されたときのハンドラです。
protected
MoveLeftHandler (SFRResponder から継承) 数字の4キーが押されたときのハンドラです。
protected
MoveRightHandler (SFRResponder から継承) 数字の6キーが押されたときのハンドラです。
protected
MoveUpHandler (SFRResponder から継承) 数字の2キーが押されたときのハンドラです。
protected
NativeHandler (SFRBrewControl から継承) サスペンド・レジューム・描画イベント以外の イベントが発生した時に呼び出されるハンドラです。
protected
RenderSafe (SFRBrewControl から継承) コントロールの描画処理をレスポンダへ委譲します。
protected
ResumeHandler (SFRBrewControl から継承) レジュームイベントが発生した時に 呼び出されるハンドラです。
protected
ScrollDownHandler (SFRResponder から継承) 数字の8キーが押されたときのハンドラです。
protected
ScrollLeftHandler (SFRResponder から継承) 数字の4キーが押されたときのハンドラです。
protected
ScrollRightHandler (SFRResponder から継承) 数字の6キーが押されたときのハンドラです。
protected
ScrollUpHandler (SFRResponder から継承) 数字の2キーが押されたときのハンドラです。
protected
SelectHandler (SFRResponder から継承) セレクトキーが押されたときのハンドラです。
protected
SuspendHandler (SFRBrewControl から継承) サスペンドイベントが発生した時に 呼び出されるハンドラです。
protected
UnregisterIntelligentHandler (SFRResponder から継承) AVK_SELECT, AVK_CLR, AVK_UP, AVK_DOWN, AVK_LEFT, AVK_RIGHT に登録されているハンドラを 削除します。
protected
UnregisterManipulateHandler (SFRResponder から継承) AVK_SELECT, AVK_CLR, AVK_DOWN, AVK_UP に登録されているハンドラを 削除します。
protected
UnregisterMoveHandler (SFRResponder から継承) AVK_2, AVK_8, AVK_4, AVK_6 に登録されているハンドラを 削除します。
protected
UnregisterScrollHandler (SFRResponder から継承) AVK_2, AVK_8, AVK_4, AVK_6 に登録されているハンドラを 削除します。
BehaviorEnum (SFRControl から継承) コントロールのデフォルトのビヘイビアを表します。
HandlerEnum (SFRHandler から継承) ハンドラの呼び出されるタイミングを表します。
TracerEnum (SFRTracer から継承) トレース順序を表します。

SFRBrewStaticControl::SFRBrewStaticControl
SFRBrewStaticControl クラスのコンストラクタです。
[ public ]
SFRBrewStaticControl(
    SFRResponderPtr director                             // 親となるレスポンダのポインタ
    ConstSFURectRef rect                                 // 親の座標上での位置
    UInt32 property                                      // プロパティ
    BehaviorType behavior = BEHAVIOR_BREWSTATICCONTROL   // ビヘイビア
    SFCType attribute = ATTRIBUTE_BREWSTATICCONTROL      // アトリビュート
);

解説

静的コントロール (SFRBrewStaticControl) オブジェクトを生成します。


SFRBrewStaticControl::~SFRBrewStaticControl
SFRBrewStaticControl クラスのデストラクタです。
[ public, virtual ]
~SFRBrewStaticControl(Void);

SFRBrewStaticControl::GoToLine
静的コントロール オブジェクト内を指定の行までスクロールします。
[ public ]
SInt32 GoToLine(
    SInt32 lineIndex   // 0 を基準としたインデックス値
);

戻り値

スクロールをする前のインデックス値を返します。


SFRBrewStaticControl::IsScrollable
静的コントロール オブジェクトの長方形領域にテキストが収まっているかを調べます。
[ public ]
Bool IsScrollable(Void);

戻り値

テキストが静的コントロール内に収まらず、静的コントロールがスクロールする場合は TRUE を返します。 テキストが静的コントロール内に収まる場合は、FALSE を返します。


SFRBrewStaticControl::SetFont
静的コントロール オブジェクトのテキストとタイトルのフォントを設定します。
[ public ]
Void SetFont(
    AEEFont textFont    // テキストのフォント
    AEEFont titleFont   // タイトルのフォント
);

バグ

BREW 2.1 以前の全ての SDK と実機で、タイトル部のフォントを変更しても、 タイトル部の描画領域の大きさが再計算されず、 見た目が崩れる不具合があります。


SFRBrewStaticControl::SetImage
静的コントロール オブジェクトにイメージ画像を設定します。
[ public ]
Bool SetImage(
    ConstSFUWideStringRef title            // タイトル
    AEEFont titleFont                      // タイトルのフォント
    const SFUBrewPtr< SFBImage > & image   // イメージ画像
);
[ public ]
Bool SetImage(
    const SFUBrewPtr< SFBImage > & image   // イメージ画像
);

戻り値

イメージ画像が正しく設定された場合は、TRUE を返します。 それ以外の場合は、FALSE を返します。

注意

静的コントロール オブジェクトに画像を設定する場合は、 以下の点に注意してください。

  • 透過色の設定をした SFBImage オブジェクトを引数に指定しないでください。
  • BCI (BREW 圧縮画像) は、常に最前面で表示してください。
  • BCI の表示中は、イメージ コントロール オブジェクトを移動しないでください。

使用例

SFRBrewStaticControlPtr staticCtl;
SFUBrewPtr<SFBShell>    shell = SFBShell::Instance();
SFUBrewPtr<SFBImage>    image;

// 静的コントロール オブジェクトを生成します。
// プロパティに ST_ICONTEXT を設定することで、テキストにイメージ画像を設定できます。
staticCtl = new SFRBrewStaticControl(this, SFURect(0, 0, 100, 100), ST_ICONTEXT);

// イメージ画像を読み込みます。
image = shell->LoadResImage(SAMPLE_RES_FILE, IDR_ICON_BMP);

// 静的コントロール オブジェクトにイメージ画像を設定します。
staticCtl->SetImage(image);

参照

SFRBrewStaticControl::SetText


SFRBrewStaticControl::SetText
静的コントロール オブジェクトにテキストを設定します。
[ public ]
Bool SetText(
    ConstSFUWideStringRef title   // タイトル
    ConstSFUWideStringRef text    // テキスト
    AEEFont titleFont             // タイトルのフォント
    AEEFont textFont              // テキストのフォント
);
[ public ]
Bool SetText(
    ConstSFUWideStringRef text   // テキスト
    AEEFont textFont             // テキストのフォント
);

戻り値

テキストが正しく設定された場合は、TRUE を返します。 それ以外の場合は、FALSE を返します。

注意

静的コントロール オブジェクトが移動中の場合は、テキストの自動スクロールが停止します。

使用例

SFRBrewStaticControlPtr staticCtl;

// 静的コントロール オブジェクトを生成します。
// プロパティに ST_NOSCROLL を設定することで、自動スクロールを停止します。
staticCtl = new SFRBrewStaticControl(this, GetContentWorld().Inset(30, 30), ST_NOSCROLL);

// 静的コントロール オブジェクトにテキストを設定します。
staticCtl->SetText("StaticCtl Title", "StaticCtl Text", AEE_FONT_LARGE, AEE_FONT_LARGE);

参照

SFRBrewStaticControl::SetTextEx | SFRBrewStaticControl::SetImage


SFRBrewStaticControl::SetTextEx
静的コントロール オブジェクトにテキストを追加、または置換します。
[ public ]
Bool SetTextEx(
    ConstSFUAnsiStringRef text   // テキスト (シングルバイト文字列)
    Bool append = FALSE          
);
[ public ]
Bool SetTextEx(
    ConstSFUWideStringRef text   // テキスト (ダブルバイト文字列)
    Bool append = FALSE          
);
[ public ]
Bool SetTextEx(
    const SFUBrewPtr< SFBAStream > & stream   // テキスト データ ストリーム
    Bool append = FALSE                       
);

戻り値

テキストが設定、または追加された場合は、TRUE を返します。 テキストが設定、または追加されなかった場合は、FALSE を返します。

解説

SFRBrewStaticControl::SetProperties で設定したフラグ (ST_ASCII) に従い 静的コントロール オブジェクトにテキストを追加、または置換します。 append が TRUE の場合はテキストに文字列を追加し、append が FALSE の場合はテキストを置換します。

注意

SFRBrewStaticControl::SetTextEx の使用時には、以下の点に注意してください。

  • 引数で文字列を設定する場合は、文字列リテラル ("literal" など "" (ダブルクォート) で囲まれた文字列) を使用しないでください。 明示的に SFUAnsiString 型、もしくは SFUWideString 型の文字列を設定してください。
  • シングルバイト文字列 (SFUAnsiString オブジェクト) を引数に設定する場合は、 ST_ASCII を静的コントロール オブジェクトのプロパティに設定してください。
  • デフォルトでは、静的コントロール オブジェクトのプロパティに ST_ASCII は設定されていません。
  • タイトルは常にダブルバイト文字列で処理します。 ST_ASCII はテキストにのみ効果があり、タイトルには適用されません。

使用例

SFRBrewStaticControlPtr staticCtl;

// 静的コントロール オブジェクトを生成します。
// プロパティに ST_ASCII を設定することで、シングルバイト文字列を扱います。
staticCtl = new SFRBrewStaticControl(this, GetContentWorld().Inset(30, 30), ST_ASCII);

// シングルバイト文字列で置換します。
staticCtl->SetTextEx(SFUAnsiString("Stream Test"));

参照

SFRBrewStaticControl::SetText | SFRBrewStaticControl::SetImage


SFRBrewStaticControl::SizeToFit
テキストの大きさに合わせて、静的コントロール オブジェクトの境界長方形を調整します。 この関数は、現在未実装です。
[ public ]
Void SizeToFit(
    SFURectPtr rect = NULL   
);

引数

rect

調整後の境界長方形を受け取る領域を指すポインタを指定します。