オブジェクト設定の定数(Integer型)
オブジェクト設定の定数(Integer型)は、オブジェクト設定関数の引数として使用します。
主に、ObjectSetInteger関数と ObjectGetInteger関数です。
以下、関数の簡単な説明です。
- ObjectSetInteger関数:オブジェクトの状態を設定する
- ObjectGetInteger関数:オブジェクトの状態を取得する
ここで注意して欲しいのは、定数の数値が直接設定されるのではなく、定数の項目に値を設定するということです。
そのため定数の他に、別の値を設定する必要があります。
定数によって、入出力可能な型が決まっているので、それも確認しましょう。
オブジェクト設定の定数には、Integer型の他にも Double型、String型の3種類があります。
ここでは、Integer型の情報を記載しております。
ちなみに Integer型とは、「int型・bool型・color型・datetime型・列挙型」を指します。
オブジェクト設定の定数:Integer型(ENUM_OBJECT_PROPERTY_INTEGER)
定数 | 入出力の型 | 設定する項目 |
OBJPROP_COLOR | color | オブジェクトの色 |
OBJPROP_STYLE | ENUM_LINE_STYLE | 線の種類 |
OBJPROP_WIDTH | int | 線の幅 |
OBJPROP_BACK | bool | オブジェクトの背景表示 |
OBJPROP_ZORDER | long | クリックイベントの優先度 大きいオブジェクトからクリックされる 参考:CHARTEVENT_CLICK |
OBJPROP_FILL | bool | オブジェクトの塗りつぶしの許可 |
OBJPROP_HIDDEN | bool | オブジェクトリストに表示させない |
OBJPROP_SELECTED | bool | オブジェクトの選択状態 |
OBJPROP_READONLY | bool | テキストを編集させない 参考:OBJ_EDIT |
OBJPROP_TYPE | ENUM_OBJECT | オブジェクトの種類 |
OBJPROP_TIME | datetime | アンカーポイントの位置(時間軸) |
OBJPROP_SELECTABLE | bool | オブジェクトの選択の許可 |
OBJPROP_CREATETIME | datetime | オブジェクトの作成日時 |
OBJPROP_LEVELS | int | レベルラインの値 参考:RSIなど |
OBJPROP_LEVELCOLOR | color | レベルラインの色 |
OBJPROP_LEVELSTYLE | ENUM_LINE_STYLE | レベルラインの線の種類 |
OBJPROP_LEVELWIDTH | int | レベルラインの太さ |
OBJPROP_ALIGN | ENUM_ALIGN_MODE | テキストの左寄せ・中央・右寄せ |
OBJPROP_FONTSIZE | int | フォントサイズ |
OBJPROP_RAY_RIGHT | bool | 線の右端の延長表示 |
OBJPROP_ELLIPSE | bool | 完全な楕円を表示 参考:OBJ_FIBOARC |
OBJPROP_ARROWCODE | char | 矢印コード |
OBJPROP_TIMEFRAMES | OBJ_PERIOD | オブジェクトを表示する時間足 |
OBJPROP_ANCHOR | ①ENUM_ARROW_ANCHOR ②ENUM_ANCHOR_POINT | アンカーポイントの設定 参考①:OBJ_ARROW 参考②:OBJ_LABEL, OBJ_BITMAP_LABEL, OBJ_TEXT |
OBJPROP_XDISTANCE | int | チャート四隅からのX軸距離(pixel) |
OBJPROP_YDISTANCE | int | チャート四隅からのY軸距離(pixel) |
OBJPROP_STATE | bool | ボタン押下の状態 |
OBJPROP_XSIZE | int | オブジェクトの幅(pixel) |
OBJPROP_YSIZE | int | オブジェクトの高さ(pixel) |
OBJPROP_XOFFSET | int | X軸方向の表示開始位置(pixel) 参考:OBJ_BITMAP,OBJ_BITMAP_LABEL |
OBJPROP_YOFFSET | int | Y軸方向の表示開始位置(pixel) 参考:OBJ_BITMAP,OBJ_BITMAP_LABEL |
OBJPROP_BGCOLOR | color | 背景色 参考:OBJ_EDIT, OBJ_BUTTON, OBJ_RECTANGLE_LABEL |
OBJPROP_CORNER | ENUM_BASE_CORNER | アンカーポイントの基準点 |
OBJPROP_BORDER_TYPE | ENUM_BORDER_TYPE | 枠線の種類 参考:OBJ_RECTANGLE |
OBJPROP_BORDER_COLOR | color | 枠線の色 参考:OBJ_EDIT , OBJ_BUTTON |
オブジェクト設定の定数(Integer型)の使い方
主に、ObjectSetInteger関数と ObjectGetInteger関数で使用されます。
ObjectSetInteger関数を実行する場合は、定数の他にInteger型の値を入力します。
ObjectGetInteger関数を実行する場合は、定数だけで問題ありません。
例えば、以下のように使用します。
//ObjectSetInteger関数
//オブジェクトの線の太さを3に設定
bool objectSetInteger = ObjectSetInteger(ChartID(),"obj_name",OBJPROP_WIDTH,3);
//ObjectGetInteger関数
//オブジェクトの線の太さを取得
int objectGetInteger = ObjectGetInteger(ChartID(),"obj_name",OBJPROP_WIDTH);
返り値はobjectSetInteger関数はbool型で、ObjectGetInteger関数はInteger型です。
実際にプログラミングするときは、上記の表にしたがって、正しい変数の型を入力・出力してください。
【補足】オブジェクト設定の定数の列挙型(ENUM_OBJECT_PROPERTY_INTEGER)
オブジェクト設定の定数(Integer型)は、ENUM_OBJECT_PROPERTY_INTEGERという列挙型に含まれています。
列挙型は、定数群をひとまとめにしたものです。
以下のように使います。
ENUM_OBJECT_PROPERTY_INTEGER objectPropertyInteger = OBJPROP_WIDTH;
上記のようにプログラムすると、objectPropertyInteger変数に OBJPROP_WIDTHの数値が代入されます。