前のページ次のページ上に戻るホーム SophiaFramework UNIVERSE 5.0
SFYScrollBarControl
スクロールバーを表すコントロールの抽象クラスです。
#include <SFYScrollBarControl.h.hpp>
class SFYScrollBarControl : public SFYControl;
SFMTYPEDEFCLASS(SFYScrollBarControl)

継承図

SFYScrollBarControl クラスの継承図

協調図

SFYScrollBarControl クラスの協調図

解説

SFYScrollBarControl は各種スクロールバーコントロールを実装するための起点となるクラスです。

このクラスは、描画機能(トラック、インクリメントラベル、デクリメントラベル、サム)とスクロール操作機能を実装します。また、いくつかの仮想関数のデフォルトの動作も実装します。

以下は、スクロールバーコントロールの仕様です。

スクロールバーコントロールのデザインは、SFYScrollBarControl::SetBevelColorSFYScrollBarControl::SetTrackColorSFYScrollBarControl::SetArrowColor 関数によって変更可能です。

スクロールバーコントロールの位置やサイズを変更するには、SFYResponder::SetRealBound 関数を使います。

SFYScrollBarControl::SetOrientation 関数によって、垂直方向のスクロールバーや水平方向のスクロールバーを生成できます。

表 191. 仮想関数名とデフォルトの動作

仮想関数名 デフォルトの動作 オーバーライト
SFYWidget::HandleBoundRequest 推奨
SFYWidget::HandleBoundOptimize 推奨
SFYScrollBarControl::HandleBoundReal 仮想領域を調整※1 任意
SFYScrollBarControl::HandleBoundVirtual 仮想領域を実領域に一致※2 任意
SFYWidget::HandleBoundGlobal 任意
SFYWidget::HandleRenderRequest 必須
SFYScrollBarControl::DrawTrack トラック領域の描画 推奨
SFYScrollBarControl::DrawDecrement 減分領域の描画 推奨
SFYScrollBarControl::DrawIncrement 増分領域の描画 推奨
SFYScrollBarControl::DrawThumb サム領域の描画 推奨
[Note] 注釈

※1.SetVirtualBound(SFXRectangle(SFXGrid::ZeroInstance(), GetRealBound().GetSize())) を実行します。

※2.SetVirtualBound(SFXRectangle(SFXGrid::ZeroInstance(), GetRealBound().GetSize())) を実行します。

参照

SFYScrollBarControl::SetBevelColor | SFYScrollBarControl::SetTrackColor | SFYScrollBarControl::SetArrowColor | SFYScrollBarControl::SetOrientation | SFYResponder::SetRealBound

メンバ

コンストラクタ/デストラクタ
SFYScrollBarControl( Void )
SFYScrollBarControl クラスのコンストラクタです。
~SFYScrollBarControl( Void )
SFYScrollBarControl クラスのデストラクタです。
パブリック関数
Bool Decrement( Void )
スクロール ステップの値を減らします。
Bool GetAlwaysVisible( Void )
常にスクロールバーを表示するかどうかを返します。
SFXRGBColorConstRef GetArrowColor( Void )
スクロールバーの矢印の色を取得します。
SFXBevelColorConstRef GetBevelColor( Void )
3D のスクロールバーを描画するためのベベルカラーを取得します。
OrientationEnum GetOrientation( Void )
スクロールバーの方向を取得します。
SInt32 GetPageValue( Void )
ページ サイズを取得します。
SInt16 GetScrollRange( Void )
Scroll Range を取得します。
SInt32 GetScrollStepValue( Void )
スクロール ステップの値を取得します。
SInt16 GetThumbLength( Void )
Thumb の長さを取得します。
SInt16 GetThumbTop( Void )
Thumb Top の位置を取得します。
SFXRGBColorConstRef GetTrackColor( Void )
Track の色を取得します。
Bool Increment( Void )
スクロール ステップの値を増やします。
Void SetAlwaysVisible( Bool param )
常にスクロールバーを表示するかどうかを設定します。
Void SetArrowColor( SFXRGBColorConstRef param )
スクロールバーの矢印の色を設定します。
Void SetBevelColor( SFXBevelColorConstRef param )
3D のスクロールバーを描画するためのベベルカラーを設定します。
Void SetOrientation( OrientationEnum param )
スクロールバーの方向を設定します。
Void SetPageValue( SInt32 param )
ページ サイズを設定します。
Void SetScrollStepValue( SInt32 param )
スクロール ステップの値を設定します。
Void SetTrackColor( SFXRGBColorConstRef param )
Track の色を設定します。
Void ClearHandler( Void ) (SFYResponder から継承)
ハンドラの登録をすべて解除します。
Void ClearTracer( Void ) (SFYResponder から継承)
トレーサの登録をすべて解除します。
SFCError Distribute( SFXEventConstRef event , BoolPtr result = null ) (SFYResponder から継承)
配信エンジンを起動してイベントを配信します。
SFXRGBColorConstRef GetBackgroundColor( Void ) (SFYWidget から継承)
背景の色を取得します。
SFYResponderSmp GetChildBack( Void ) (SFYResponder から継承)
GetChildBack( UInt32 id , Bool visible , Bool active , Bool enable , Bool focus ) (SFYResponder から継承)
GetChildBack( UInt32 id ) (SFYResponder から継承)
GetChildBack( Bool visible , Bool active , Bool enable , Bool focus ) (SFYResponder から継承)
最背面に位置する子レスポンダを取得します。
SFYResponderSmp GetChildBackward( SInt32 index ) (SFYResponder から継承)
GetChildBackward( SInt32 index , UInt32 id , Bool visible , Bool active , Bool enable , Bool focus ) (SFYResponder から継承)
GetChildBackward( SInt32 index , UInt32 id ) (SFYResponder から継承)
GetChildBackward( SInt32 index , Bool visible , Bool active , Bool enable , Bool focus ) (SFYResponder から継承)
背面から数えて指定された順番に位置する子レスポンダを取得します。
SInt32 GetChildCount( Void ) (SFYResponder から継承)
GetChildCount( UInt32 id , Bool visible , Bool active , Bool enable , Bool focus ) (SFYResponder から継承)
GetChildCount( UInt32 id ) (SFYResponder から継承)
GetChildCount( Bool visible , Bool active , Bool enable , Bool focus ) (SFYResponder から継承)
子レスポンダの数を取得します。
SFYResponderSmp GetChildForward( SInt32 index ) (SFYResponder から継承)
GetChildForward( SInt32 index , UInt32 id , Bool visible , Bool active , Bool enable , Bool focus ) (SFYResponder から継承)
GetChildForward( SInt32 index , UInt32 id ) (SFYResponder から継承)
GetChildForward( SInt32 index , Bool visible , Bool active , Bool enable , Bool focus ) (SFYResponder から継承)
前面から数えて指定された順番に位置する子レスポンダを取得します。
SFYResponderSmp GetChildFront( Void ) (SFYResponder から継承)
GetChildFront( UInt32 id , Bool visible , Bool active , Bool enable , Bool focus ) (SFYResponder から継承)
GetChildFront( UInt32 id ) (SFYResponder から継承)
GetChildFront( Bool visible , Bool active , Bool enable , Bool focus ) (SFYResponder から継承)
最前面に位置する子レスポンダを取得します。
SInt32 GetCurrentValue( Void ) (SFYControl から継承)
コントロールの現在値を取得します。
SFYDistributerPtr GetDistributer( Void ) (SFYResponder から継承)
配信エンジンを取得します。
SFXRectangle GetGlobalBound( Void ) (SFYResponder から継承)
グローバル領域を取得します。
UInt32 GetID( Void ) (SFYResponder から継承)
ID を取得します。
SFXRectangle GetLocalBound( Void ) (SFYResponder から継承)
ローカル領域を取得します。
SInt32 GetMaximumValue( Void ) (SFYControl から継承)
コントロールの最大値を取得します。
SInt32 GetMinimumValue( Void ) (SFYControl から継承)
コントロールの最小値を取得します。
SInt32 GetNthBackward( Void ) (SFYResponder から継承)
GetNthBackward( UInt32 id , Bool visible , Bool active , Bool enable , Bool focus ) (SFYResponder から継承)
GetNthBackward( UInt32 id ) (SFYResponder から継承)
GetNthBackward( Bool visible , Bool active , Bool enable , Bool focus ) (SFYResponder から継承)
自レスポンダが背面から数えて何番目に位置するかを取得します。
SInt32 GetNthForward( Void ) (SFYResponder から継承)
GetNthForward( UInt32 id , Bool visible , Bool active , Bool enable , Bool focus ) (SFYResponder から継承)
GetNthForward( UInt32 id ) (SFYResponder から継承)
GetNthForward( Bool visible , Bool active , Bool enable , Bool focus ) (SFYResponder から継承)
自レスポンダが前面から数えて何番目に位置するかを取得します。
SFYResponderSmp GetParent( Void ) (SFYResponder から継承)
親レスポンダを取得します。
Bool GetPropertyTransparent( Void ) (SFYResponder から継承)
透過属性を取得します。
SFXRectangleConstRef GetRealBound( Void ) (SFYResponder から継承)
実領域を取得します。
VoidPtr GetReference( Void ) (SFYResponder から継承)
リファレンス値を取得します。
SFYRendererPtr GetRenderer( Void ) (SFYResponder から継承)
描画エンジンを取得します。
SFYResponderSmp GetRoot( Void ) (SFYResponder から継承)
ルートレスポンダを取得します。
Bool GetStateActive( Bool inherit = false ) (SFYResponder から継承)
活性状態を取得します。
Bool GetStateEnable( Bool inherit = false ) (SFYResponder から継承)
操作可能状態を取得します。
Bool GetStateFocus( Bool inherit = false ) (SFYResponder から継承)
フォーカス状態を取得します。
Bool GetStateVisible( Bool inherit = false ) (SFYResponder から継承)
可視状態を取得します。
SFXRectangle GetSuitableBound( Void ) (SFYResponder から継承)
GetSuitableBound( SFXRectangleConstRef param ) (SFYResponder から継承)
最適な大きさを取得します。
SFXMargin GetSuitableMargin( Void ) (SFYResponder から継承)
最適な余白を取得します。
SFCType GetType( Void ) (SFYResponder から継承)
タイプを取得します。
SFXRectangleConstRef GetVirtualBound( Void ) (SFYResponder から継承)
仮想領域を取得します。
Void Initialize( Void ) (SFYResponder から継承)
レスポンダを初期化します。
Void Invalidate( Void ) (SFYResponder から継承)
Invalidate( SFXRectangleConstRef param ) (SFYResponder から継承)
再描画領域を登録します。
Void InvokeBackward( SFXEventConstRef event , Bool overload , BoolPtr result = null ) (SFYResponder から継承)
レスポンダにイベントを送信します。ハンドラ関数はハンドラリストに登録された順序で呼び出されます。
Void InvokeForward( SFXEventConstRef event , Bool overload , BoolPtr result = null ) (SFYResponder から継承)
レスポンダにイベントを送信します。ハンドラ関数はハンドラリストに登録された逆順で呼び出されます。
Bool IsBack( Void ) (SFYResponder から継承)
IsBack( UInt32 id , Bool visible , Bool active , Bool enable , Bool focus ) (SFYResponder から継承)
IsBack( UInt32 id ) (SFYResponder から継承)
IsBack( Bool visible , Bool active , Bool enable , Bool focus ) (SFYResponder から継承)
自レスポンダが最背面に位置するかどうかを判定します。
Bool IsFront( Void ) (SFYResponder から継承)
IsFront( UInt32 id , Bool visible , Bool active , Bool enable , Bool focus ) (SFYResponder から継承)
IsFront( UInt32 id ) (SFYResponder から継承)
IsFront( Bool visible , Bool active , Bool enable , Bool focus ) (SFYResponder から継承)
自レスポンダが最前面に位置するかどうかを判定します。
Bool IsNthBackward( SInt32 index ) (SFYResponder から継承)
IsNthBackward( SInt32 index , UInt32 id , Bool visible , Bool active , Bool enable , Bool focus ) (SFYResponder から継承)
IsNthBackward( SInt32 index , UInt32 id ) (SFYResponder から継承)
IsNthBackward( SInt32 index , Bool visible , Bool active , Bool enable , Bool focus ) (SFYResponder から継承)
自レスポンダが背面から数えて指定された順番に位置するかどうかを判定します。
Bool IsNthForward( SInt32 index ) (SFYResponder から継承)
IsNthForward( SInt32 index , UInt32 id , Bool visible , Bool active , Bool enable , Bool focus ) (SFYResponder から継承)
IsNthForward( SInt32 index , UInt32 id ) (SFYResponder から継承)
IsNthForward( SInt32 index , Bool visible , Bool active , Bool enable , Bool focus ) (SFYResponder から継承)
自レスポンダが前面から数えて指定された順番に位置するかどうかを判定します。
Bool IsRoot( Void ) (SFYResponder から継承)
自レスポンダがルートレスポンダかどうかを判定します。
SFCError RegisterHandler( SFXEventRangeConstRef range , SFYHandler::RuleRecConstRef rule ) (SFYResponder から継承)
RegisterHandler( SFXEventRangeConstPtr range , SFYHandler::HandlerSPPConstPtr spp , VoidPtrConstPtr reference , SInt32 length ) (SFYResponder から継承)
RegisterHandler( SFXEventRangeConstPtr range , SFYHandler::RuleRecConstPtr rule , SInt32 length ) (SFYResponder から継承)
RegisterHandler( SFXEventRangeConstRef range , SFYHandler::HandlerSPP spp , VoidPtr reference ) (SFYResponder から継承)
ハンドラを登録します。
SFCError RegisterTracer( SFXEventRangeConstRef range , SFYTracer::RuleRecConstRef rule ) (SFYResponder から継承)
RegisterTracer( SFXEventRangeConstPtr range , SFYTracer::OrderEnumConstPtr order , SFYTracer::StateEnumConstPtr state , BoolConstPtr overload , SInt32 length ) (SFYResponder から継承)
RegisterTracer( SFXEventRangeConstPtr range , SFYTracer::RuleRecConstPtr rule , SInt32 length ) (SFYResponder から継承)
RegisterTracer( SFXEventRangeConstRef range , SFYTracer::OrderEnum order , SFYTracer::StateEnum state , Bool overload ) (SFYResponder から継承)
トレーサを登録します。
SFCError Render( Bool force = false ) (SFYResponder から継承)
描画エンジンを起動して再描画します。
Void SetBackgroundColor( SFXRGBColorConstRef param ) (SFYWidget から継承)
背景の色を設定します。
Void SetCurrentValue( SInt32 param ) (SFYControl から継承)
コントロールの現在値を設定します。
Void SetDistributer( SFYDistributerPtr param ) (SFYResponder から継承)
配信エンジンを設定します。
Void SetID( UInt32 param ) (SFYResponder から継承)
ID を設定します。
Void SetMaximumValue( SInt32 param ) (SFYControl から継承)
コントロールの最大値を設定します。
Void SetMinimumValue( SInt32 param ) (SFYControl から継承)
コントロールの最小値を設定します。
SFCError SetParent( SFYResponderSmpConstRef param ) (SFYResponder から継承)
親レスポンダを設定します。
Void SetProperty( Bool transparent ) (SFYResponder から継承)
属性をまとめて設定します。
Void SetPropertyTransparent( Bool param ) (SFYResponder から継承)
透過属性を設定します。
Void SetRealBound( SFXRectangleConstRef param ) (SFYResponder から継承)
実領域を設定します。
Void SetReference( VoidPtr param ) (SFYResponder から継承)
リファレンス値を設定します。
Void SetRenderer( SFYRendererPtr param ) (SFYResponder から継承)
描画エンジンを設定します。
Void SetState( Bool visible , Bool active , Bool enable , Bool focus ) (SFYResponder から継承)
状態をまとめて設定します。
Void SetStateActive( Bool param ) (SFYResponder から継承)
活性状態を設定します。
Void SetStateEnable( Bool param ) (SFYResponder から継承)
操作可能状態を設定します。
Void SetStateFocus( Bool param ) (SFYResponder から継承)
フォーカス状態を設定します。
Void SetStateVisible( Bool param ) (SFYResponder から継承)
可視状態を設定します。
Void SetVirtualBound( SFXRectangleConstRef param ) (SFYResponder から継承)
仮想領域を設定します。
Void Terminate( Void ) (SFYResponder から継承)
レスポンダの終了処理をします。
Void ToBack( Void ) (SFYResponder から継承)
ToBack( UInt32 id , Bool visible , Bool active , Bool enable , Bool focus ) (SFYResponder から継承)
ToBack( UInt32 id ) (SFYResponder から継承)
ToBack( Bool visible , Bool active , Bool enable , Bool focus ) (SFYResponder から継承)
自レスポンダを姉妹レスポンダのなかで最背面に移動します。
Void ToFront( Void ) (SFYResponder から継承)
ToFront( UInt32 id , Bool visible , Bool active , Bool enable , Bool focus ) (SFYResponder から継承)
ToFront( UInt32 id ) (SFYResponder から継承)
ToFront( Bool visible , Bool active , Bool enable , Bool focus ) (SFYResponder から継承)
自レスポンダを姉妹レスポンダのなかで最前面に移動します。
Void ToNthBackward( SInt32 index ) (SFYResponder から継承)
ToNthBackward( SInt32 index , UInt32 id , Bool visible , Bool active , Bool enable , Bool focus ) (SFYResponder から継承)
ToNthBackward( SInt32 index , UInt32 id ) (SFYResponder から継承)
ToNthBackward( SInt32 index , Bool visible , Bool active , Bool enable , Bool focus ) (SFYResponder から継承)
自レスポンダを背面から数えて指定された順番に移動します。
Void ToNthForward( SInt32 index ) (SFYResponder から継承)
ToNthForward( SInt32 index , UInt32 id , Bool visible , Bool active , Bool enable , Bool focus ) (SFYResponder から継承)
ToNthForward( SInt32 index , UInt32 id ) (SFYResponder から継承)
ToNthForward( SInt32 index , Bool visible , Bool active , Bool enable , Bool focus ) (SFYResponder から継承)
自レスポンダを前面から数えて指定された順番に移動します。
Void UnregisterHandler( SFXEventRangeConstRef range , SFYHandler::RuleRecConstRef rule ) (SFYResponder から継承)
UnregisterHandler( SFXEventRangeConstPtr range , SFYHandler::HandlerSPPConstPtr spp , VoidPtrConstPtr reference , SInt32 length ) (SFYResponder から継承)
UnregisterHandler( SFXEventRangeConstPtr range , SFYHandler::RuleRecConstPtr rule , SInt32 length ) (SFYResponder から継承)
UnregisterHandler( SFXEventRangeConstRef range , SFYHandler::HandlerSPP spp , VoidPtr reference ) (SFYResponder から継承)
ハンドラの登録を解除します。
Void UnregisterTracer( SFXEventRangeConstRef range ) (SFYResponder から継承)
UnregisterTracer( SFXEventRangeConstPtr range , SInt32 length ) (SFYResponder から継承)
トレーサの登録を解除します。
T const & static_catch( Void ) (static_exception から継承)
現在保持している例外を取得します。
プロテクト関数
SFXRectangle DrawDecrement( SFXGraphicsPtr graphics , SFXRectangleConstRef rectangle )
増分領域を描画します。
SFXRectangle DrawIncrement( SFXGraphicsPtr graphics , SFXRectangleConstRef rectangle )
減分領域を描画します。
Void DrawThumb( SFXGraphicsPtr graphics , SFXRectangleConstRef rectangle )
サム領域を描画します。
SFXRectangle DrawTrack( SFXGraphicsPtr graphics , SFXRectangleConstRef rectangle )
トラック領域を描画します。
Void HandleBoundReal( Void )
実領域が変化した時の処理を行います。
Void HandleBoundVirtual( Void )
仮想領域の変更処理を行います。
Void UpdateScrollBar( Void )
サムの大きさと位置、スクロール範囲を調整します。
static
SFYResponderSmp
Factory( SFYResponderPtr responder , SFCErrorPtr exception = null ) (SFYResponder から継承)
NewInstance 関数の実装を補助します。
SFYResponderSmp GetThis( Void ) (SFYResponder から継承)
スマートポインタで保持された this を取得します。
Void HandleBoundGlobal( SFXRectangleConstRef rectangle ) (SFYWidget から継承)
グローバル領域の変更処理を行います。
Void HandleBoundOptimize( SFXRectanglePtr rectangle ) (SFYWidget から継承)
指定した矩形に収まる範囲内で最適なサイズを計算します。
Void HandleBoundRequest( SFXRectanglePtr rectangle ) (SFYWidget から継承)
最適な矩形を計算します。
Void HandleRenderRequest( SFXGraphicsPtr graphics ) (SFYWidget から継承)
レスポンダを描画します。
Void SetType( SFCType param ) (SFYResponder から継承)
タイプを設定します。
Void static_throw( static_exception< T > const & param ) (static_exception から継承)
static_throw( T const & param ) (static_exception から継承)
例外を設定します。
Bool static_try( Void ) (static_exception から継承)
例外が保持されているかどうかを確かめます。
CodeEnum
SFYScrollBarControl クラスを表す定数です。
OrientationEnum
スクロールバーの方向を表す定数です。

SFYScrollBarControl::SFYScrollBarControl
SFYScrollBarControl クラスのコンストラクタです。
[ protected, explicit ]
SFYScrollBarControl(Void);

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

SFYScrollBarControl::Decrement
スクロール ステップの値を減らします。
[ public ]
Bool Decrement(Void);

解説

SFYScrollBarControl::SetScrollStepValue 関数で設定されたスクロール ステップの値を減らします。

参照

SFYScrollBarControl::SetScrollStepValue | SFYScrollBarControl::Increment


SFYScrollBarControl::DrawDecrement
増分領域を描画します。
[ protected, virtual, const ]
SFXRectangle DrawDecrement(
    SFXGraphicsPtr graphics          // グラフィックスオブジェクト
    SFXRectangleConstRef rectangle   // ベースの領域
);

戻り値

ベース領域から増分描画領域を除いた領域を返します。

解説

増分部分を描画した後、ベースの描画領域から増分描画領域を除いた領域を返します。

参照

SFYScrollBarControl::DrawTrack | SFYScrollBarControl::DrawIncrement | SFYScrollBarControl::DrawThumb


SFYScrollBarControl::DrawIncrement
減分領域を描画します。
[ protected, virtual, const ]
SFXRectangle DrawIncrement(
    SFXGraphicsPtr graphics          // グラフィックスオブジェクト
    SFXRectangleConstRef rectangle   // ベースの領域
);

戻り値

ベース領域から減分描画領域を除いた領域を返します。

解説

減分部分を描画した後、ベースの描画領域から増分描画領域を除いた領域を返します。

参照

SFYScrollBarControl::DrawTrack | SFYScrollBarControl::DrawDecrement | SFYScrollBarControl::DrawThumb


SFYScrollBarControl::DrawThumb
サム領域を描画します。
[ protected, virtual, const ]
Void DrawThumb(
    SFXGraphicsPtr graphics          // グラフィックスオブジェクト
    SFXRectangleConstRef rectangle   // ベースの領域
);

解説

サム領域を描画します。

参照

SFYScrollBarControl::DrawTrack | SFYScrollBarControl::DrawDecrement | SFYScrollBarControl::DrawIncrement


SFYScrollBarControl::DrawTrack
トラック領域を描画します。
[ protected, virtual, const ]
SFXRectangle DrawTrack(
    SFXGraphicsPtr graphics          // グラフィックスオブジェクト
    SFXRectangleConstRef rectangle   // ベースの領域
);

戻り値

ベースの描画領域をそのまま返します。

解説

トラック部分を描画した後、ベースの描画領域をそのまま返します。

参照

SFYScrollBarControl::DrawDecrement | SFYScrollBarControl::DrawIncrement | SFYScrollBarControl::DrawThumb


SFYScrollBarControl::GetAlwaysVisible
常にスクロールバーを表示するかどうかを返します。
[ public, const ]
Bool GetAlwaysVisible(Void);

戻り値

true: スクロールする必要がないときも表示されます。

false: スクロールする必要がないときは表示されません。

デフォルト値: false

解説

常にスクロールバーを表示するかどうかの状態を取得します。

参照

SFYScrollBarControl::SetAlwaysVisible


SFYScrollBarControl::GetArrowColor
スクロールバーの矢印の色を取得します。
[ public, const ]
SFXRGBColorConstRef GetArrowColor(Void);

戻り値

矢印(三角形)の色(SFXRGBColor)。

参照

SFYScrollBarControl::SetArrowColor | SFXRGBColor


SFYScrollBarControl::GetBevelColor
3D のスクロールバーを描画するためのベベルカラーを取得します。
[ public, const ]
SFXBevelColorConstRef GetBevelColor(Void);

戻り値

3D のスクロールバーを描画するためのベベルカラー(SFXBevelColor)。

参照

SFYScrollBarControl::SetBevelColor | SFXBevelColor


SFYScrollBarControl::GetOrientation
スクロールバーの方向を取得します。
[ public ]
OrientationEnum GetOrientation(Void);

戻り値

スクロールバーの方向(HORIZONTAL または VERTICAL)。

参照

SFYScrollBarControl::SetOrientation | SFYScrollBarControl::OrientationEnum


SFYScrollBarControl::GetPageValue
ページ サイズを取得します。
[ public ]
SInt32 GetPageValue(Void);

参照

SFYScrollBarControl::SetPageValue


SFYScrollBarControl::GetScrollRange
Scroll Range を取得します。
[ public ]
SInt16 GetScrollRange(Void);

SFYScrollBarControl::GetScrollStepValue
スクロール ステップの値を取得します。
[ public ]
SInt32 GetScrollStepValue(Void);

戻り値

スクロール ステップの値。

参照

SFYScrollBarControl::SetScrollStepValue


SFYScrollBarControl::GetThumbLength
Thumb の長さを取得します。
[ public ]
SInt16 GetThumbLength(Void);

SFYScrollBarControl::GetThumbTop
Thumb Top の位置を取得します。
[ public ]
SInt16 GetThumbTop(Void);

戻り値

Thumb Top の位置(垂直スクロールバーの場合は Y 座標の値、水平スクロールバーの場合は X 座標の値)。


SFYScrollBarControl::GetTrackColor
Track の色を取得します。
[ public, const ]
SFXRGBColorConstRef GetTrackColor(Void);

戻り値

Track 矩形を塗り潰す色(SFXRGBColor)。

参照

SFYScrollBarControl::SetTrackColor | SFXRGBColor


SFYScrollBarControl::HandleBoundReal
実領域が変化した時の処理を行います。
[ protected, virtual ]
Void HandleBoundReal(Void);

解説

この関数は、(SFEVT_RESPONDER_BOUND, SFP16_BOUND_REAL) イベントを受信したときに呼び出されます。

開発者は、独自の処理のためにこの関数をオーバーライドできます。

デフォルトの実装では、スクロールバーを構成する部品の位置と大きさを再計算し、仮想領域を実領域に一致させます。そして再描画領域としてこの領域を登録します。

[Note] (SFEVT_RESPONDER_BOUND, SFP16_BOUND_REAL) イベントの送信

(SFEVT_RESPONDER_BOUND, SFP16_BOUND_REAL) イベントは SFYResponder::SetRealBound 関数を呼び出したときなどに発生します。

[Note] 実領域の変更処理

この仮想関数をオーバーライドする以外に、 領域イベント専用ハンドラ[XANDLER_DECLARE_VOIDBOUND]を定義・実装し レスポンダに登録して行うことも可能です。

実領域の変更処理は、最初に仮想関数を実行し、次に領域イベント専用ハンドラを登録した順に実行して行われます。

領域イベント専用ハンドラを宣言し登録する手間が省けるので、通常はこの仮想関数をオーバーライドだけして実領域の変更処理を行います。

参照

SFYResponder::SetRealBound | 領域イベント(SFEVT_RESPONDER_BOUND) | 領域イベント専用ハンドラ[XANDLER_DECLARE_VOIDBOUND]


SFYScrollBarControl::HandleBoundVirtual
仮想領域の変更処理を行います。
[ protected, virtual ]
Void HandleBoundVirtual(Void);

解説

(SFEVT_RESPONDER_BOUND, SFP16_BOUND_VIRTUAL) イベントを受信したときに呼び出される関数です。

仮想領域の変更時に追加の処理を行いたい場合は、この関数をオーバーライドします。

デフォルトの実装は、仮想領域を実領域に一致させます。

[Note] (SFEVT_RESPONDER_BOUND, SFP16_BOUND_VIRTUAL) イベントの送信

(SFEVT_RESPONDER_BOUND, SFP16_BOUND_VIRTUAL) イベントは SFYResponder::SetRealBound または SFYResponder::SetVirtualBound 関数を呼び出したときなどに発生します。

[Note] 仮想領域の変更処理

この仮想関数をオーバーライドする以外に、 領域イベント専用ハンドラ[XANDLER_DECLARE_VOIDBOUND]を定義・実装し レスポンダに登録して行うことも可能です。

仮想領域の変更処理は、最初に仮想関数を実行し、次に領域イベント専用ハンドラを登録した順に実行して行われます。

領域イベント専用ハンドラを宣言し登録する手間が省けるので、通常はこの仮想関数をオーバーライドだけして仮想領域の変更処理を行います。

参照

SFYResponder::SetRealBound | SFYResponder::SetVirtualBound | 領域イベント(SFEVT_RESPONDER_BOUND) | 領域イベント専用ハンドラ[XANDLER_DECLARE_VOIDBOUND]


SFYScrollBarControl::Increment
スクロール ステップの値を増やします。
[ public ]
Bool Increment(Void);

解説

SFYScrollBarControl::SetScrollStepValue 関数で設定されたスクロール ステップの値を増やします。

参照

SFYScrollBarControl::SetScrollStepValue | SFYScrollBarControl::Decrement


SFYScrollBarControl::SetAlwaysVisible
常にスクロールバーを表示するかどうかを設定します。
[ public ]
Void SetAlwaysVisible(
    Bool param   // 常にスクロールバーを表示するかどうか
);

解説

true に設定すると常にスクロールバーを表示します。

false に設定するとスクロールする必要がないときは表示しません。

デフォルト値: false

参照

SFYScrollBarControl::GetAlwaysVisible


SFYScrollBarControl::SetArrowColor
スクロールバーの矢印の色を設定します。
[ public ]
Void SetArrowColor(
    SFXRGBColorConstRef param   // 設定する色
);

解説

スクロールバーの矢印(三角形)の色(SFXRGBColor)を設定します。

デフォルト値: SFXRGBColor(0x00, 0x00, 0x00, 0x00)[黒色]

参照

SFYScrollBarControl::GetArrowColor | SFXRGBColor


SFYScrollBarControl::SetBevelColor
3D のスクロールバーを描画するためのベベルカラーを設定します。
[ public ]
Void SetBevelColor(
    SFXBevelColorConstRef param   // 設定するベベルカラーの値
);

解説

3D のスクロールバーを描画するためのベベルカラーを設定します。

デフォルト値: SFXBevelColor(SFXRGBColor(0xFF, 0xFF, 0xFF, 0x00), SFXRGBColor(0xDD, 0xDD, 0xDD, 0x00), SFXRGBColor(0x88, 0x88, 0x88, 0x00))

参照

SFYScrollBarControl::GetBevelColor | SFXBevelColor | SFXRGBColor


SFYScrollBarControl::SetOrientation
スクロールバーの方向を設定します。
[ public ]
Void SetOrientation(
    OrientationEnum param   // スクロールバーの方向
);

解説

スクロールバーの方向を取得します。水平(HORIZONTAL)または垂直(VERTICAL)の方向に設定可能です。

デフォルト値: VERTICAL

参照

SFYScrollBarControl::GetOrientation | SFYScrollBarControl::OrientationEnum


SFYScrollBarControl::SetPageValue
ページ サイズを設定します。
[ public ]
Void SetPageValue(
    SInt32 param   // 設定するページ サイズ
);

参照

SFYScrollBarControl::GetPageValue


SFYScrollBarControl::SetScrollStepValue
スクロール ステップの値を設定します。
[ public ]
Void SetScrollStepValue(
    SInt32 param   // 設定する値
);

解説

スクロール ステップの値を設定します。

参照

SFYScrollBarControl::GetScrollStepValue


SFYScrollBarControl::SetTrackColor
Track の色を設定します。
[ public ]
Void SetTrackColor(
    SFXRGBColorConstRef param   // 設定する RGB 色
);

解説

Track 矩形を塗り潰す色(SFXRGBColor)を設定します。

デフォルト値: SFXRGBColor(0xEE, 0xEE, 0xEE, 0x00)

参照

SFYScrollBarControl::GetTrackColor | SFXRGBColor


SFYScrollBarControl::UpdateScrollBar
サムの大きさと位置、スクロール範囲を調整します。
[ protected ]
Void UpdateScrollBar(Void);

解説

スクロールバーのローカル領域、コントロール値(最小値、最大値、現在値)、および、ページサイズからサムの位置と大きさ、スクロール範囲を計算し直します。

領域やコントロール値、ページサイズに変更があったときに呼び出します。


SFYScrollBarControl::CodeEnum
SFYScrollBarControl クラスを表す定数です。
enum CodeEnum {
    CODE_TYPE = four_char_code('.', 's', 'c', 'r')
};
SFMTYPEDEFTYPE(CodeEnum)

参照

SFYResponder::GetType | SFYResponder::SetType


SFYScrollBarControl::OrientationEnum
スクロールバーの方向を表す定数です。
enum OrientationEnum {
    HORIZONTAL  = 0,  // 水平方向
    VERTICAL          // 垂直方向
};
SFMTYPEDEFTYPE(OrientationEnum)