オブジェクト座標を変更 ObjectMove 関数

関数

オブジェクト関数

ObjectMove 関数

この関数は、指定したチャート上のオブジェクトの指定した点(アンカーポイント)座標を変更します。

データ型と構成・戻り値

bool ObjectMove(①,②,③,④,⑤);

戻り値は、変更が成功した場合は true、それ以外は falseが返されます。
発生するエラーについては、GetLastError関数で取得することができます。

引数 [2]

ObjectMove関数は 2個の引数で構成されます。

番
号
引数名データ型単位初期値説明
①chart_idlong-0チャートIDを設定。現在のチャートIDは「0」を指定するか、ChartID関数を使うことで取得できます。
②object_namestring--変更するオブジェクト名。
③point_indexint--アンカーポイントのインデックス。アンカーポイントの数は、オブジェクトタイプによって異なります。
インデックス値は 0から始まります。
④timedatetime--選択したアンカーポイントの時間座標(X軸)。
⑤pricedouble--選択したアンカーポイントの価格座標(Y軸)。
※初期値があるものは省略可。②以降は省略不可。

使用例

ObjectMove関数によるオブジェクトの検索

オブジェクトを 2つ描画して ObjectMove関数使って位置を変更します。変更前後が分かるように Sleep関数で 1秒後に位置が変更します。

コード

// ObjectMove関数によるオブジェクト位置の変更
#property strict

void OnInit() {

ObjectsDeleteAll();                               // オブジェクト全削除

ObjectCreate("obj①", OBJ_VLINE, 0, Time[10], 0); // ①垂直線
ObjectCreate("obj②", OBJ_HLINE, 0, 0, Ask);      // ②水平線

Sleep(1000);

ObjectMove("obj①",0, Time[5], 0);
ObjectMove("obj②",0, 0, Open[10]);
}

void OnDeinit(const int reason) {
   ObjectsDeleteAll();
}

コードをコンパイルして実行する方法はこちらを参考にしてください。(デモ口座でお試しください)

結果 

タイトルとURLをコピーしました