ボタンウィジェットを提供するクラス [詳細]
#include <sgobject.h>
Public メソッド | |
SGButtonObject (SGDialog *dlg, SGObject *parent, int id) | |
コンストラクタ | |
virtual | ~SGButtonObject () |
デストラクタ | |
void | SetImage (SGImage *image) |
オブジェクトにイメージを登録する | |
virtual SGHandle | HitTest (int posx, int posy) |
virtual void | Draw (SGSurface *surface, SGRect region, int offx=0, int offy=0) |
virtual SGString * | GetText () |
virtual void | SetText (SGString text) |
virtual int | GetFocusStop () |
virtual void | SetFocusStop (int stop) |
virtual int | GetFontId () |
virtual void | SetFontId (int fontid) |
virtual int | GetMarginX () |
virtual void | SetMarginX (int margin) |
virtual int | GetMarginY () |
virtual void | SetMarginY (int margin) |
virtual int | GetAlign () |
virtual void | SetAlign (int align) |
virtual unsigned int | GetColor () |
virtual void | SetColor (unsigned int col) |
virtual unsigned int | GetColorEffect () |
virtual void | SetColorEffect (unsigned int col) |
virtual int | GetLinespace () |
virtual void | SetLinespace (int space) |
SGTextAttribute & | GetTextAttr (int type) |
テキストの属性を保持している SGTextAttribute クラスを取得する | |
virtual int | GetEnableRepeat () |
virtual void | SetEnableRepeat (int enable=1) |
virtual void | GetRepeatTime (int &first, int &interval) |
virtual void | SetRepeatTime (int first, int interval) |
virtual int | GetPushTime () |
virtual void | SetPushTime (int time) |
virtual int | GetPushClickEnable () |
virtual void | SetPushClickEnable (int enable) |
ボタンウィジェットを提供するクラス
SGButtonObject | ( | SGDialog * | dlg, | |
SGObject * | parent, | |||
int | id | |||
) |
コンストラクタ
dlg | このオブジェクトを持っているダイアログ | |
parent | このオブジェクトを管理する親オブジェクト | |
id | オブジェクトのリソースID |
~SGButtonObject | ( | ) | [virtual] |
デストラクタ
void SetImage | ( | SGImage * | image | ) |
オブジェクトにイメージを登録する
オブジェクトにイメージを登録します。
この関数は SGGroupObject::AddButton() からコールされています。 最終的に SGButtonImage::CreateImage() をコールして登録されているファイル名の 画像を読み込み、サーフェースを生成します。
image | ボタン用イメージクラス |
SGHandle HitTest | ( | int | posx, | |
int | posy | |||
) | [virtual] |
指定した座標にオブジェクトが存在するか判定する 指定した座標にオブジェクトが存在するか判定します。
posx | X座標(ダイアログの左辺を0とする) | |
posy | Y座標(ダイアログの上辺を0とする) |
SGObjectを再定義しています。
オブジェクトを描画する 更新範囲内に含まれるオブジェクトの描画を行います。
surface | 表示するサーフェース | |
region | 更新範囲 | |
offx | オフセットX | |
offy | オフセットY |
SGObjectを再定義しています。
int GetFocusStop | ( | ) | [virtual] |
フォーカス属性を付けることができるか調べる このオブジェクトにフォーカス属性を付けることができるか調べます。
TRUE | フォーカス属性を付けることができます。 | |
FALSE | フォーカス属性を付けることはできません。 |
SGObjectを再定義しています。
void SetFocusStop | ( | int | stop | ) | [virtual] |
フォーカス属性を付けることが、できる/できない、を設定する フォーカス属性を付けることが、できる/できない、を設定します。
フォーカスが有効なオブジェクトはボタンとエディットボックスのみです。
その他のオブジェクトに設定した場合は無視されます。
ボタンやエディットボックスにフォーカスを置きたくない場合に使用します。
デフォルトではボタン、エディットボックスはフォーカスが有効になっています。
stop | TRUE 有効(フォーカス属性を付けることができるようにする) | |
stop | FALSE 無効(フォーカス属性を付けることができないようにする) |
SGObjectを再定義しています。
int GetFontId | ( | ) | [virtual] |
使用しているフォントを取得する このオブジェクトが使用しているフォントのリソースIDを取得します。
オブジェクトがフォントを持っていない場合は0(ゼロ)が返ります。
SGObjectを再定義しています。
void SetFontId | ( | int | fontid | ) | [virtual] |
使用するフォントを設定する このオブジェクトが使用するフォントを設定します。
オブジェクトがフォントを持たない場合、処理は無視されます。
fontid | フォントのリソースID |
SGObjectを再定義しています。
int GetMarginX | ( | ) | [virtual] |
文字列を配置する時の横方向のマージンを取得する 文字列を配置する時の横方向のマージンを取得します。
オブジェクトが文字列を持たない場合、処理は無視されます。
SGObjectを再定義しています。
void SetMarginX | ( | int | margin | ) | [virtual] |
文字列を配置する時の横方向のマージンを設定する 文字列を配置する時の横方向のマージンを設定します。
オブジェクトが文字列を持たない場合、処理は無視されます。
margin | マージン幅 |
SGObjectを再定義しています。
int GetMarginY | ( | ) | [virtual] |
文字列を配置する時の縦方向のマージンを取得する 文字列を配置する時の縦方向のマージンを取得します。
オブジェクトが文字列を持たない場合、処理は無視されます。
SGObjectを再定義しています。
void SetMarginY | ( | int | margin | ) | [virtual] |
文字列を配置する時の縦方向のマージンを設定する 文字列を配置する時の縦方向のマージンを設定します。
オブジェクトが文字列を持たない場合、処理は無視されます。
margin | マージン幅 |
SGObjectを再定義しています。
int GetAlign | ( | ) | [virtual] |
文字列の配置情報を取得する 文字列の配置情報を取得します。
オブジェクトが文字列を持たない場合、0ゼロが返ります。 文字列の配置情報の取得は SGDialog::GetAlign() を使用すると便利です。
SG_ALIGN_CENTER 中央 SG_ALIGN_LEFT 左寄せ SG_ALIGN_RIGHT 右寄せ
SG_ALIGN_MIDDLE 中央 SG_ALIGN_TOP 上寄せ SG_ALIGN_BOTTOM 下寄せ
SG_ALIGN_XSTRETCH 横方向が枠に収まらない時は幅を縮小して全部を表示します。 SG_ALIGN_YSTRETCH 縦方向が枠に収まらない時は高さを縮小して全部を表示します。 SG_ALIGN_STRETCH 横方向または縦方向が枠に収まらない時は縮小して全部を表示します。 SG_ALIGN_COMMA 3桁毎にカンマを追加し、通貨表示にします(1,234,567) SG_ALIGN_NOCLIP 枠からはみ出す場合でもクリップしないでそのまま表示します。
SGObjectを再定義しています。
void SetAlign | ( | int | align | ) | [virtual] |
文字列の配置情報を設定する 文字列の配置情報を設定します。
オブジェクトが文字列を持たない場合、処理は無視されます。
文字列の配置情報は SGDialog::SetAlign() を使用すると便利です。
align | 配置 左右方向の寄せ SG_ALIGN_CENTER 中央 SG_ALIGN_LEFT 左寄せ SG_ALIGN_RIGHT 右寄せ 上下方向の寄せ SG_ALIGN_MIDDLE 中央 SG_ALIGN_TOP 上寄せ SG_ALIGN_BOTTOM 下寄せ 属性 SG_ALIGN_XSTRETCH 横方向が枠に収まらない時は幅を縮小して全部を表示します。 SG_ALIGN_YSTRETCH 縦方向が枠に収まらない時は高さを縮小して全部を表示します。 SG_ALIGN_STRETCH 横方向または縦方向が枠に収まらない時は縮小して全部を表示します。 SG_ALIGN_COMMA 3桁毎にカンマを追加し、通貨表示にします(1,234,567) SG_ALIGN_NOCLIP 枠からはみ出す場合でもクリップしないでそのまま表示します。 左右方向の寄せと上下方向の寄せをそれぞれ指定できます。 |
SGObjectを再定義しています。
unsigned int GetColor | ( | ) | [virtual] |
void SetColor | ( | unsigned int | col | ) | [virtual] |
unsigned int GetColorEffect | ( | ) | [virtual] |
void SetColorEffect | ( | unsigned int | col | ) | [virtual] |
int GetLinespace | ( | ) | [virtual] |
void SetLinespace | ( | int | space | ) | [virtual] |
複数行文字列を表示する時の改行幅を設定する 複数行文字列を表示する時の改行幅を設定します。 オブジェクトが文字列を持たない場合、処理は無視されます。
space | 改行幅 |
SGObjectを再定義しています。
SGTextAttribute & GetTextAttr | ( | int | type | ) |
テキストの属性を保持している SGTextAttribute クラスを取得する
テキストの属性を保持している SGTextAttribute クラスを取得します。
取得するテキスト属性に関する詳細は SGTextAttribute を参照して下さい。
type | 種類SG_ATTR_NORMAL(0) 通常の状態用 SG_ATTR_DISABLE(1) ディスエーブルの状態用 SG_ATTR_ACTIVE(2) アクティブの状態用(ラジオ、チェックなど) SG_ATTR_FOCUS(3) フォーカス用 SG_ATTR_DOWN(4) 通常の押下状態用 SG_ATTR_ACTDOWN(5) アクティブでかつ押下状態用 |
int GetEnableRepeat | ( | ) | [virtual] |
押し下げ状態の時にクリックを許可する/しないを設定 押し下げ状態の時に次のクリックを許可するかしないかを設定します。 詳しくは SetPushTime の説明を参照して下さい。
enable | TRUE:許可する FALSE:許可しない |
TRUE | 有効 | |
FALSE | 無効 |
SGObjectを再定義しています。
void SetEnableRepeat | ( | int | enable = 1 |
) | [virtual] |
キーリピートの有効/無効を設定する キーリピートの有効/無効を設定します。
キーリピートが有効なオブジェクトはボタンとエディットボックスのみです。
その他のオブジェクトに設定した場合は無視されます。
初期状態ではキーリピートは無効に設定されています。
enable | 有効/無効
TRUE 有効(省略時) FALSE 無効 |
SGObjectを再定義しています。
void GetRepeatTime | ( | int & | first, | |
int & | interval | |||
) | [virtual] |
キーリピートが開始されるまでの時間とキーリピート間隔を取得する キーリピートが開始されるまでの時間とキーリピート間隔を取得します。
first | キーリピートが開始されるまでの時間取得用(ms) | |
interval | キーリピート間隔取得用(ms) |
SGObjectを再定義しています。
void SetRepeatTime | ( | int | first, | |
int | interval | |||
) | [virtual] |
キーリピートが開始されるまでの時間とキーリピート間隔を設定する キーリピートが開始されるまでの時間とキーリピート間隔を設定します。
first | キーリピートが開始されるまでの時間(ms) | |
interval | キーリピート間隔(ms) |
SGObjectを再定義しています。
int GetPushTime | ( | ) | [virtual] |
void SetPushTime | ( | int | time | ) | [virtual] |
押し下げ状態を維持する時間を設定 押し下げ状態を維持する時間を設定します。
初期状態(設定しない場合)は200msです。
押し下げられたボタンは、ボタンを離した時(UPイベント時)元の状態に戻りますが、 押してから離すまでの時間が、ここで設定した時間以下の場合はDOWN状態を維持し、ボタンの表示は押下状態を 維持します。その場合、設定した時間が経過した時に元の状態に戻ります。
※ SGObject::SetPushClickEnable() でFALSE(許可しない)が設定されている場合、押し下げられているボタンを もう一度クリックしてもクリックイベントは発生しません。
※ 初期状態(設定しない場合)では PushClickEnable は不許可に設定されています。
time | 時間(ms) |
SGObjectを再定義しています。
int GetPushClickEnable | ( | ) | [virtual] |
押し下げ状態の時にクリックを許可する/しないを取得 押し下げ状態の時に次のクリックを許可するかしないかを取得します。TRUE:許可する
FALSE:許可しない |
SGObjectを再定義しています。
void SetPushClickEnable | ( | int | enable | ) | [virtual] |
押し下げ状態の時にクリックを許可する/しないを設定 押し下げ状態の時に次のクリックを許可するかしないかを設定します。 詳しくは SetPushTime の説明を参照して下さい。
enable | TRUE:許可する FALSE:許可しない |
SGObjectを再定義しています。