ObjectCreate
この関数は、指定された名称、型、及び指定されたチャートサブウィンドウでの初期座標を使用してオブジェクトを作成します。作成時には 30 までの座標を指定することが出来ます。
bool ObjectCreate( |
パラメータ
chart_id
[in] チャート識別子( 0 は現在のチャート)
name
[in] オブジェクト名名称は、サブウィンドウを含めたチャート内で一意でなければなりません。
型
[in] オブジェクトの型値は ENUM_OBJECT 列挙のいずれかです。
sub_window
[in] チャートサブウィンドウの番号。( 0 はメインチャートウィンドウ)指定されたサブウィンドウは存在しなければなりません。さもないと、この関数は false を返します。
time1
[in] 1 番目のアンカーの時間座標
price1
[in] 1 番目のアンカーの価格座標
timeN=0
[in] N 番目のアンカーの時間座標
priceN=0
[in] N 番目のアンカーの価格座標
time30=0
[in] 30番目のアンカーの時間座標
price30=0
[in] 30番目のアンカーの価格座標
戻り値
この関数は、指定されたチャートのキューにコマンドが正常に追加された場合はtrueを返し、それ以外の場合はfalseを返します。オブジェクトが既に作成されている場合は、その座標の変更を試みます。
注意事項
ObjectCreate()では常に非同期呼び出しが使用されます。これが、この関数がチャートキューにコマンドを追加した結果だけを返す理由です。この場合、trueはコマンドが正常にエンキューされたことを意味しますのみで、その実行結果は不明です。
コマンドの実行結果を確認するにはObjectFind()関数またはオブジェクトプロパティをレクエストするObjectGetXXXなどのその他の関数を使用できます。ただし、そのような関数はそのチャートのキューの最後に追加され、(同期呼び出しのために)実行結果を待つため、時間がかかる可能性があります。チャート上で多数のオブジェクトを操作する場合は、この特徴を考慮する必要があります。
オブジェクト名は 63 字を超えられません。
チャートに指標を含むサブウィンドウが存在する場合、チャートサブウィンドウの番号付けは 1 から始まります。チャートのメインウィンドウは常に 0 インデックスを持ちます。
大多数(最大30)のアンカーポイントは、将来の使用のために実装されています。同時に、グラフィックオブジェクトのためのアンカーポイントの30での上限は、関数を呼び出す時に使用出来るパラメータ数の制限(64以下)によって決定されています。
オブジェクトの名称が変更された場合、2 つのイベントが同時に形成されます。これらのイベントはエキスパートアドバイザーまたは指標の OnChartEvent() 関数によって処理されます。
- 古い名称のオブジェクトの削除イベント
- 新しい名称のオブジェクトの作成イベント
それぞれのオブジェクトの型の作成時には、特定の数のアンカーポイントのを指定する必要があります。
ID | 説明 | アンカーポイント |
OBJ_VLINE | 垂直線。 | 1 つのアンカーポイント実際には時間座標のみが使用されます。 |
OBJ_HLINE | 水平線。 | 1 つのアンカーポイント実際には価格座標のみが使用されます。 |
OBJ_TREND | 傾向線。 | 2 つのアンカーポイント |
OBJ_TRENDBYANGLE | 角度による傾向線。 | 2 つのアンカーポイント |
OBJ_CYCLES | サイクルライン。 | 2 つのアンカーポイント |
OBJ_ARROWED_LINE | 矢印。 | 2 つのアンカーポイント |
OBJ_CHANNEL | 等距離チャンネル。 | 3 つのアンカーポイント |
OBJ_STDDEVCHANNEL | 標準偏差チャンネル。 | 2 つのアンカーポイント |
OBJ_REGRESSION | 線形回帰チャンネル。 | 2 つのアンカーポイント |
OBJ_PITCHFORK | アンドリューズピッチフォーク。 | 3 つのアンカーポイント |
OBJ_GANNLINE | ギャンライン。 | 2 つのアンカーポイント |
OBJ_GANNFAN | ギャンファン(扇)。 | 2 つのアンカーポイント |
OBJ_GANNGRID | ギャングリッド。 | 2 つのアンカーポイント |
OBJ_FIBO | フィボナッチリトレースメント。 | 2 つのアンカーポイント |
OBJ_FIBOTIMES | フィボナッチタイムゾーン。 | 2 つのアンカーポイント |
OBJ_FIBOFAN | フィボナッチファン(扇)。 | 2 つのアンカーポイント |
OBJ_FIBOARC | フィボナッチアーク(円弧)。 | 2 つのアンカーポイント |
OBJ_FIBOCHANNEL | フィボナッチチャンネル。 | 3 つのアンカーポイント |
OBJ_EXPANSION | フィボナッチ拡張。 | 3 つのアンカーポイント |
OBJ_ELLIOTWAVE5 | エリオット動機波。 | 5 つのアンカーポイント |
OBJ_ELLIOTWAVE3 | エリオット修正波。 | 3 つのアンカーポイント |
OBJ_RECTANGLE | 長方形。 | 2 つのアンカーポイント |
OBJ_TRIANGLE | 三角形。 | 3 つのアンカーポイント |
OBJ_ELLIPSE | 楕円形。 | 3 つのアンカーポイント |
OBJ_ARROW_THUMB_UP | サムズアップ。 | 1 つのアンカーポイント |
OBJ_ARROW_THUMB_DOWN | サムズダウン。 | 1 つのアンカーポイント |
OBJ_ARROW_UP | 上矢印。 | 1 つのアンカーポイント |
OBJ_ARROW_DOWN | 下矢印。 | 1 つのアンカーポイント |
OBJ_ARROW_STOP | ストップサイン。 | 1 つのアンカーポイント |
OBJ_ARROW_CHECK | チェックサイン。 | 1 つのアンカーポイント |
OBJ_ARROW_LEFT_PRICE | 左プライスラベル。 | 1 つのアンカーポイント |
OBJ_ARROW_RIGHT_PRICE | 右プライスラベル。 | 1 つのアンカーポイント |
OBJ_ARROW_BUY | 買いサイン。 | 1 つのアンカーポイント |
OBJ_ARROW_SELL | 売りサイン。 | 1 つのアンカーポイント |
OBJ_ARROW | 矢印。 | 1 つのアンカーポイント |
OBJ_TEXT | テキスト。 | 1 つのアンカーポイント |
OBJ_LABEL | ラベル。 | 位置は OBJPROP_XDISTANCE 及び OBJPROP_YDISTANCE プロパティで設定されます。 |
OBJ_BUTTON | ボタン。 | 位置は OBJPROP_XDISTANCE 及び OBJPROP_YDISTANCE プロパティで設定されます。 |
OBJ_CHART | チャート。 | 位置は OBJPROP_XDISTANCE 及び OBJPROP_YDISTANCE プロパティで設定されます。 |
OBJ_BITMAP | ビットマップ。 | 1 つのアンカーポイント |
OBJ_BITMAP_LABEL | ビットマップラベル。 | 位置は OBJPROP_XDISTANCE 及び OBJPROP_YDISTANCE プロパティで設定されます。 |
OBJ_EDIT | 編集。 | 位置は OBJPROP_XDISTANCE 及び OBJPROP_YDISTANCE プロパティで設定されます。 |
OBJ_EVENT | 経済カレンダーのイベントに対応する「イベント」オブジェクト。 | 1 つのアンカーポイント実際には時間座標のみが使用されます。 |
OBJ_RECTANGLE_LABEL | カスタムグラフィカルインタフェースを作成及び設計するための「四角形ラベル」オブジェクト。 | 位置は OBJPROP_XDISTANCE 及び OBJPROP_YDISTANCE プロパティで設定されます。 |
ObjectName
この関数は、指定されたチャートの指定されたサブウィンドウで、指定された型を持つオブジェクトの名称を返します。
string ObjectName( |
パラメータ
chart_id
[in] チャート識別子( 0 は現在のチャート)
pos
[in] サブウィンドウの数と種類によって指定されたフィルタに応じたオブジェクトの序数
sub_window=-1
[in] チャートサブウィンドウの番号。( 0 はメインウィンドウ、-1 はメインウィンドウを含む全てのサブウィンドウ)
type=-1
[in] オブジェクトの型。値は ENUM_OBJECT 列挙のいずれかです。-1 は全ての型を意味します。
戻り値
成功の場合はオブジェクト名
注意事項
この関数は同期呼び出しを使用します。つまり、この関数が呼び出される前にこのチャートのエンキューされたすべてのコマンドの実行が待機されるため、この関数は時間がかかることがあります。チャート上で多数のオブジェクトを操作する場合は、この特徴を考慮する必要があります。
オブジェクトの名称が変更された場合、2 つのイベントが同時に形成されます。これらのイベントはエキスパートアドバイザーまたは指標の OnChartEvent() 関数によって処理されます。
- 古い名称のオブジェクトの削除イベント
- 新しい名称のオブジェクトの作成イベント
ObjectDelete
この関数は指定された名称のオブジェクトを指定されたチャートから削除します。
bool ObjectDelete( |
パラメータ
chart_id
[in] チャート識別子( 0 は現在のチャート)
name
[in] 削除されるオブジェクト名
戻り値
この関数は、指定されたチャートのキューにコマンドが正常に追加された場合はtrueを返し、それ以外の場合はfalseを返します。
注意事項
ObjectDelete()では常に非同期呼び出しが使用されます。これが、この関数がチャートキューにコマンドを追加した結果だけを返す理由です。この場合、trueはコマンドが正常にエンキューされたことを意味しますのみで、その実行結果は不明です。
コマンドの実行結果を確認するにはObjectFind()関数またはオブジェクトプロパティをレクエストするObjectGetXXXなどのその他の関数を使用できます。ただし、そのような関数はそのチャートのキューの最後に追加され、(同期呼び出しのために)実行結果を待つため、時間がかかる可能性があります。チャート上で多数のオブジェクトを操作する場合は、この特徴を考慮する必要があります。
オブジェクトの名称が変更された場合、2 つのイベントが同時に形成されます。これらのイベントはエキスパートアドバイザーまたは指標の OnChartEvent() 関数によって処理されます。
- 古い名称のオブジェクトの削除イベント
- 新しい名称のオブジェクトの作成イベント
ObjectsDeleteAll
指定された型のオブジェクトを全て指定されたチャートまたはチャートサブウィンドウから削除します。
int ObjectsDeleteAll( |
オブジェクト名のプレフィックスを使用して、指定された型のオブジェクトを全て削除します。
int ObjectsDeleteAll( |
パラメータ
chart_id
[in] チャート識別子( 0 は現在のチャート)
prefix
[in] オブジェクト名のプレフィックス。名称がこの文字のセットから始まる全てのオブジェクトがチャートから削除されます。プレフィックスは ‘name’ または ‘name*’ として指定でき、両バージョンの機能は同じです。空の文字列がプレフィックスとして指定された場合、全ての名称のオブジェクトが削除されます。
sub_window=-1
[in] チャートサブウィンドウの番号( 0 はメインウィンドウ、-1 はメインウィンドウを含む全てのサブウィンドウ)
type=-1
[in] オブジェクトの型。値は ENUM_OBJECT 列挙のいずれかです。-1 は全ての型を意味します。
戻り値
削除されたオブジェクトの数。エラーの詳細を読むには GetLastError() を呼びます。
注意事項
この関数は同期呼び出しを使用します。つまり、この関数が呼び出される前にこのチャートのエンキューされたすべてのコマンドの実行が待機されるため、この関数は時間がかかることがあります。チャート上で多数のオブジェクトを操作する場合は、この特徴を考慮する必要があります。
ObjectFind
この関数は指定された ID を持つチャートで指定された名称のオブジェクトを探します。
int ObjectFind( |
パラメータ
chart_id
[in] チャート識別子( 0 は現在のチャート)
name
[in] 探されるオブジェクトの名称
戻り値
成功した場合、オブジェクトが見つかったサブウィンドウの番号( 0 はメインウィンドウ)。オブジェクトが見つからなかった場合、負の数。エラーの詳細を読むには GetLastError() を呼びます。
注意事項
この関数は同期呼び出しを使用します。つまり、この関数が呼び出される前にこのチャートのエンキューされたすべてのコマンドの実行が待機されるため、この関数は時間がかかることがあります。チャート上で多数のオブジェクトを操作する場合は、この特徴を考慮する必要があります。
オブジェクトの名称が変更された場合、2 つのイベントが同時に形成されます。これらのイベントはエキスパートアドバイザーまたは指標の OnChartEvent() 関数によって処理されます。
- 古い名称のオブジェクトの削除イベント
- 新しい名称のオブジェクトの作成イベント
ObjectGetTimeByValue
この関数は、指定されたオブジェクトの指定された価格値に対応する時間値を返します。
datetime ObjectGetTimeByValue( |
パラメータ
chart_id
[in] チャート識別子( 0 は現在のチャート)
name
[in] オブジェクト名
value
[in] 価格値
line_id
[in] ラインID
戻り値
指定されたオブジェクトの指定された価格値に対応する時間値
注意事項
この関数は同期呼び出しを使用します。つまり、この関数が呼び出される前にこのチャートのエンキューされたすべてのコマンドの実行が待機されるため、この関数は時間がかかることがあります。チャート上で多数のオブジェクトを操作する場合は、この特徴を考慮する必要があります。
オブジェクト 1 つの価格座標で複数の値を持つことが出来るため、行番号を指定する必要があります。この関数は、次のオブジェクトにのみ適用されます。
- トレンドライン(OBJ_TREND)
- アングルトレンド(OBJ_TRENDBYANGLE)
- ギャンライン(OBJ_GANNLINE)
- 等距離チャンネル(OBJ_CHANNEL) – 2 ライン
- 線形回帰チャンネル (OBJ_REGRESSION) – 3 ライン
- 標準偏差チャンネル(OBJ_STDDEVCHANNEL) – 3 ライン
- 矢印線(OBJ_ARROWED_LINE)
参照
オブジェクト型
ObjectGetValueByTime
この関数は、指定されたオブジェクトの指定された時間値に対応する価格値を返します。
double ObjectGetValueByTime( |
パラメータ
chart_id
[in] チャート識別子( 0 は現在のチャート)
name
[in] オブジェクト名
time
[in] 時刻
line_id
[in] 線の識別子
戻り値
指定されたオブジェクトの指定された時間値に対応する価格値
注意事項
この関数は同期呼び出しを使用します。つまり、この関数が呼び出される前にこのチャートのエンキューされたすべてのコマンドの実行が待機されるため、この関数は時間がかかることがあります。チャート上で多数のオブジェクトを操作する場合は、この特徴を考慮する必要があります。
オブジェクト 1 つの価格座標で複数の値を持つことが出来るため、行番号を指定する必要があります。この関数は、次のオブジェクトにのみ適用されます。
- トレンドライン(OBJ_TREND)
- アングルトレンド(OBJ_TRENDBYANGLE)
- ギャンライン(OBJ_GANNLINE)
- 等距離チャンネル(OBJ_CHANNEL) – 2 ライン
- 線形回帰チャンネル (OBJ_REGRESSION) – 3 ライン
- 標準偏差チャンネル(OBJ_STDDEVCHANNEL) – 3 ライン
- 矢印線(OBJ_ARROWED_LINE)
参照
オブジェクト型
ObjectMove
この関数は、指定されたアンカーポイントまたはオブジェクトの座標を変更します。
bool ObjectMove( |
パラメータ
chart_id
[in] チャート識別子( 0 は現在のチャート)
name
[in] オブジェクト名
point_index
[in] アンカーポイントのインデックス。アンカーポイントの数はオブジェクト型によって違います。
time
[in] 選択されたアンカーポイントの時間座標
価格
[in] 選択されたアンカーポイントの価格座標
戻り値
この関数は、指定されたチャートのキューにコマンドが正常に追加された場合はtrueを返し、それ以外の場合はfalseを返します。
注意事項
ObjectMove()では常に非同期呼び出しが使用されます。これが、この関数がチャートキューにコマンドを追加した結果だけを返す理由です。この場合、trueはコマンドが正常にエンキューされたことを意味しますのみで、その実行結果は不明です。
コマンドの実行結果を確認するにはオブジェクトプロパティをレクエストするObjectGetXXXなどのその他の関数を使用できます。ただし、そのような関数はそのチャートのキューの最後に追加され、(同期呼び出しのために)実行結果を待つため、時間がかかる可能性があります。チャート上で多数のオブジェクトを操作する場合は、この特徴を考慮する必要があります。
ObjectsTotal
この関数は、指定されたチャートの指定されたサブウィンドウで、指定された型を持つオブジェクトの数を返します。
int ObjectsTotal( |
パラメータ
chart_id
[in] チャート識別子( 0 は現在のチャート)
sub_window=-1
[in] チャートサブウィンドウの番号。( 0 はメインウィンドウ、-1 はメインウィンドウを含む全てのサブウィンドウ)
type=-1
[in] オブジェクトの型。値は ENUM_OBJECT 列挙のいずれかです。-1 は全ての型を意味します。
戻り値
オブジェクトの数。
注意事項
この関数は同期呼び出しを使用します。つまり、この関数が呼び出される前にこのチャートのエンキューされたすべてのコマンドの実行が待機されるため、この関数は時間がかかることがあります。チャート上で多数のオブジェクトを操作する場合は、この特徴を考慮する必要があります。
ObjectSetDouble
この関数は、対応するオブジェクトプロパティの値を設定します。オブジェクトプロパティは double 型でなければなりません。この関数には 2 つのバージョンがあります。
修飾語なしでのプロパティ値の設定
bool ObjectSetDouble( |
修飾子を使用してのプロパティ値の設定
bool ObjectSetDouble( |
パラメータ
chart_id
[in] チャート識別子( 0 は現在のチャート)
name
[in] オブジェクト名
prop_id
[in] オブジェクトプロパティ識別子。値は ENUM_OBJECT_PROPERTY_DOUBLE 列挙のいずれかです。
prop_modifier
[in] 指定されたプロパティの修飾子。修飾子はフィボナッチツールのレべル数及びグラフィックオブジェクトのアンドリューズピッチフォークを示します。 レベルの番号付けは0から始まります。
prop_value
[in] プロパティ値
戻り値
グラフィックオブジェクトのプロパティ変更コマンドが正常にチャートに送信された場合にのみ true、その他の場合は false。エラーの詳細を読むには GetLastError() を呼びます。
注意事項
この関数は非同期呼び出しを使用します。つまり、この関数は指定されたチャートのキューに追加されたコマンドの実行を待機せずに、代わりに、すぐに制御を返します。
コマンドの実行結果を確認するには指定されたオブジェクトプロパティをレクエストする関数を使用できますが、そのような関数はそのチャートのキューの最後に追加され、実行結果を待つため時間がかかることにご注意ください。チャート上で多数のオブジェクトを操作する場合は、この特徴を考慮する必要があります。
フィボナッチオブジェクトを作成し新しいレベルを追加する例
//+——————————————————————+ //— フィボナッチオブジェクトの初めのアンカーポイントの座標 //— フィボナッチオブジェクトを作成する |
参照
オブジェクトの型、オブジェクトプロパティ
ObjectSetInteger
この関数は、対応するオブジェクトプロパティの値を設定します。オブジェクトプロパティは datetime、int、color、bool または char 型でなければなりません。この関数には 2 つのバージョンがあります。
修飾語なしでのプロパティ値の設定
bool ObjectSetInteger( |
修飾子を使用してのプロパティ値の設定
bool ObjectSetInteger( |
パラメータ
chart_id
[in] チャート識別子( 0 は現在のチャート)
name
[in] オブジェクト名
prop_id
[in] オブジェクトプロパティ識別子。値は ENUM_OBJECT_PROPERTY_INTEGER 列挙のいずれかです。
prop_modifier
[in] 指定されたプロパティの修飾子。修飾子はフィボナッチツールのレベル数及びグラフィックオブジェクトのアンドリューズピッチフォークを示します。 レベルの番号付けは0から始まります。
prop_value
[in] プロパティ値
戻り値
グラフィックオブジェクトのプロパティ変更コマンドが正常にチャートに送信された場合にのみ true、その他の場合は false。エラーの詳細を読むには GetLastError() を呼びます。
注意事項
この関数は非同期呼び出しを使用します。つまり、この関数は指定されたチャートのキューに追加されたコマンドの実行を待機せずに、代わりに、すぐに制御を返します。
コマンドの実行結果を確認するには指定されたオブジェクトプロパティをレクエストする関数を使用できますが、そのような関数はそのチャートのキューの最後に追加され、実行結果を待つため時間がかかることにご注意ください。チャート上で多数のオブジェクトを操作する場合は、この特徴を考慮する必要があります。
ウェブカラーの表を作成する例
//+——————————————————————+ |
参照
オブジェクトの型、オブジェクトプロパティ
ObjectSetString
この関数は、対応するオブジェクトプロパティの値を設定します。オブジェクトプロパティは string 型でなければなりません。この関数には 2 つのバージョンがあります。
修飾語なしでのプロパティ値の設定
bool ObjectSetString( |
修飾子を使用してのプロパティ値の設定
bool ObjectSetString( |
パラメータ
chart_id
[in] チャート識別子( 0 は現在のチャート)
name
[in] オブジェクト名
prop_id
[in] オブジェクトプロパティ識別子。値は ENUM_OBJECT_PROPERTY_STRING 列挙のいずれかです。
prop_modifier
[in] 指定されたプロパティの修飾子。修飾子はフィボナッチツールのレベル数及びグラフィックオブジェクトのアンドリューズピッチフォークを示します。 レベルの番号付けは0から始まります。
prop_value
[in] プロパティ値
戻り値
グラフィックオブジェクトのプロパティ変更コマンドが正常にチャートに送信された場合にのみ true、その他の場合は false。エラーの詳細を読むには GetLastError() を呼びます。
注意事項
この関数は非同期呼び出しを使用します。つまり、この関数は指定されたチャートのキューに追加されたコマンドの実行を待機せずに、代わりに、すぐに制御を返します。
コマンドの実行結果を確認するには指定されたオブジェクトプロパティをレクエストする関数を使用できますが、そのような関数はそのチャートのキューの最後に追加され、実行結果を待つため時間がかかることにご注意ください。チャート上で多数のオブジェクトを操作する場合は、この特徴を考慮する必要があります。
オブジェクトの名称が変更された場合、2 つのイベントが同時に形成されます。これらのイベントはエキスパートアドバイザーまたは指標の OnChartEvent() 関数によって処理されます。
- 古い名称のオブジェクトの削除イベント
- 新しい名称のオブジェクトの作成イベント
ObjectGetDouble
この関数は、対応するオブジェクトプロパティの値を返します。オブジェクトプロパティは double 型でなければなりません。この関数には 2 つのバージョンがあります。
1. すぐにプロパティ値を返します。
double ObjectGetDouble( |
2. 関数実行の成功に応じて true または false を返します。成功した場合、プロパティ値は最後のパラメータで参照によって受け渡された変数に配置されます。
bool ObjectGetDouble( |
パラメータ
chart_id
[in] チャート識別子( 0 は現在のチャート)
name
[in] オブジェクト名
prop_id
[in] オブジェクトプロパティ識別子。値は ENUM_OBJECT_PROPERTY_DOUBLE 列挙のいずれかです。
prop_modifier
[in] 指定されたプロパティの修飾子。1 番目のバージョン例では、デフォルト修飾子の値が 0 に等しいです。ほとんどのプロパティは修飾子を必要としません。修飾子はフィボナッチツールのレベル数及びグラフィックオブジェクトのアンドリューズピッチフォークを示します。 レベルの番号付けは0から始まります。
double_var
[out] リクエストされたプロパティの値を受け取ったdouble 型の変数
戻り値
最初の呼び出しバージョン例では、double 型の値
2 番目の呼び出しバージョン例では、指定されたプロパティが維持され、その値がdouble_var 変数に置かれている場合には true, それ以外の場合は false。エラーの詳細を読むには GetLastError() を呼びます。
注意事項
この関数は同期呼び出しを使用します。つまり、この関数が呼び出される前にこのチャートのエンキューされたすべてのコマンドの実行が待機されるため、この関数は時間がかかることがあります。チャート上で多数のオブジェクトを操作する場合は、この特徴を考慮する必要があります。
ObjectGetInteger
この関数は、対応するオブジェクトプロパティの値を返します。オブジェクトプロパティは datetime、int、color、bool または char 型でなければなりません。この関数には 2 つのバージョンがあります。
1. すぐにプロパティ値を返します。
long ObjectGetInteger( |
2. 関数実行の成功に応じて true または false を返します。成功した場合、プロパティ値は最後のパラメータで参照によって受け渡された変数に配置されます。
bool ObjectGetInteger( |
パラメータ
chart_id
[in] チャート識別子( 0 は現在のチャート)
name
[in] オブジェクト名
prop_id
[in] オブジェクトプロパティ識別子。値は ENUM_OBJECT_PROPERTY_INTEGER 列挙のいずれかです。
prop_modifier
[in] 指定されたプロパティの修飾子。1 番目のバージョン例では、デフォルト修飾子の値が 0 に等しいです。ほとんどのプロパティは修飾子を必要としません。修飾子はフィボナッチツールのレベル数及びグラフィックオブジェクトのアンドリューズピッチフォークを示します。 レベルの番号付けは0から始まります。
long_var
[out] リクエストされたプロパティの値を受け取る long 型の変数
戻り値
最初の呼び出しバージョン例では long 型の値
2 番目の呼び出しバージョン例では、指定されたプロパティが維持され、その値がlong_var 変数に置かれている場合には true, それ以外の場合は falseエラーの詳細を読むには GetLastError() を呼びます。
注意事項
この関数は同期呼び出しを使用します。つまり、この関数が呼び出される前にこのチャートのエンキューされたすべてのコマンドの実行が待機されるため、この関数は時間がかかることがあります。チャート上で多数のオブジェクトを操作する場合は、この特徴を考慮する必要があります。
ObjectGetString
この関数は、対応するオブジェクトプロパティの値を返します。オブジェクトプロパティは string 型でなければなりません。この関数には 2 つのバージョンがあります。
1. すぐにプロパティ値を返します。
string ObjectGetString( |
2. 関数実行の成功に応じて true または false を返します。成功した場合、プロパティ値は最後のパラメータで参照によって受け渡された変数に配置されます。
bool ObjectGetString( |
パラメータ
chart_id
[in] チャート識別子( 0 は現在のチャート)
name
[in] オブジェクト名
prop_id
[in] オブジェクトプロパティ識別子。値は ENUM_OBJECT_PROPERTY_STRING 列挙のいずれかです。
prop_modifier
[in] 指定されたプロパティの修飾子。1 番目のバージョン例では、デフォルト修飾子の値が 0 に等しいです。ほとんどのプロパティは修飾子を必要としません。修飾子はフィボナッチツールのレベル数及びグラフィックオブジェクトのアンドリューズピッチフォークを示します。 レベルの番号付けは0から始まります。
string_var
[out] リクエストされたプロパティ値を受け取るstring 型の変数
戻り値
最初の呼び出しバージョン例では string 型の値
2 番目の呼び出しバージョン例では、指定されたプロパティが維持され、その値がstring_var 変数に置かれている場合には true, それ以外の場合は falseエラーの詳細を読むには GetLastError() を呼びます。
注意事項
この関数は同期呼び出しを使用します。つまり、この関数が呼び出される前にこのチャートのエンキューされたすべてのコマンドの実行が待機されるため、この関数は時間がかかることがあります。チャート上で多数のオブジェクトを操作する場合は、この特徴を考慮する必要があります。
オブジェクトの名称が変更された場合、2 つのイベントが同時に形成されます。これらのイベントはエキスパートアドバイザーまたは指標の OnChartEvent() 関数によって処理されます。
- 古い名称のオブジェクトの削除イベント
- 新しい名称のオブジェクトの作成イベント
TextSetFont
この関数は、描画メソッドを使用してテキストを表示するためのフォントを設定します。デフォルトとしてArial120(12 pt)が使用されます。
bool TextSetFont( |
パラメータ
name
[in] システム内フォント名、またはディスク上のフォントやフォントファイルのパスを含むリソースの名称。
size
[in] 正負の値で設定出来るフォントサイズ。正の値の場合は、表示されるテキストのサイズは、オペレーティングシステムのフォントサイズの設定に依存しません。負の値の場合、少数第一の桁で設定され、テキストのサイズは、オペレーティングシステムの設定(「標準規模」や「大規模」)に依存します。モードの違いについての詳細は、下記の注意事項を参照してください。
flags
[in] フォントスタイルを記述するフラグの組み合わせ
orientation
[in] 0.1度の測定単位での、X 軸に対するテキストの水平方向の傾き。例えば orientation=450 は45度に等しい傾きを表しています。
戻り値
現在のフォントが正常にインストールされている場合は true それ以外の場合は false を返します。可能なエラーコードは下記です。
- ERR_INVALID_PARAMETER(4003) – name が NULL または “” (空の文字列)です。
- ERR_INTERNAL_ERROR(4001) – オペレーティングシステムエラー(例えば、存在しないフォントを作成する試み)
注意事項
「::」 がフォント名に使用された場合、フォントは EX5 リソースからダウンロードされます。name フォント名が拡張子と指定された場合ファイルからダウンロードされ、パスが「」または「/」から始まる場合、ファイルが MQL5 ディレクトリと相対して検索されます。それ以外の場合は TextSetFont() 関数を呼び出した EX5 ファイルのパスを基準に検索されます。
フォントサイズは、正または負の値を使用して設定されます。この事実は、テキストサイズのオペレーティングシステムの設定(サイズスケール)への依存性を定義します。
- サイズが正の数で指定された場合、このサイズは、使用可能なフォントから選ばれたシンボルのグリフの高さに一致するデバイスの物理的な測定単位(ピクセル)に変換されます。これは、TextOut() 関数で表示されたテキストとOBJ_LABEL (“Label”) で表示されたテキストがチャートで一緒に使用される場合には推奨されていません。
- サイズが負の数で指定された場合、この数は 論理ポイントの10倍となります(例えば -350 は 35 論理ポイント). 取得された値は、デバイス(ピクセル)の物理的な測定単位に変換され、利用可能なフォントから選んだシンボルの高さの絶対値に相当します。画面のテキストのサイズを OBJ_LABEL オブジェクトの物と同じようにするには、オブジェクトプロパティで指定されたフォントサイズを -10 で掛けます。
フラグは、フォント幅を指定するフラグのいずれかの形式のフラグの組み合わせとして使用することが出来ます。フラグ名は下記に見られます。
フォントスタイルを指定するフラグ
フラグ | 説明 |
FONT_ITALIC | イタリック |
FONT_UNDERLINE | アンダーライン |
FONT_STRIKEOUT | ストライクアウト |
フォントの幅を指定するフラグ
フラグ |
FW_DONTCARE |
FW_THIN |
FW_EXTRALIGHT |
FW_ULTRALIGHT |
FW_LIGHT |
FW_NORMAL |
FW_REGULAR |
FW_MEDIUM |
FW_SEMIBOLD |
FW_DEMIBOLD |
FW_BOLD |
FW_EXTRABOLD |
FW_ULTRABOLD |
FW_HEAVY |
FW_BLACK |
参照
リソース、ResourceCreate()、ResourceSave()、TextOut()
TextOut
この関数は、カスタム配列(バッファ)にテキストを表示し、その操作の結果を返します。配列はグラフィックリソースの作成に意図されています。
bool TextOut( |
パラメータ
text
[in] バッファに書かれる表示テキスト。一行のテキストのみが表示されます。
x
[in] 表示テキストのアンカーポイントの X 座標
y
[in] 表示テキストのアンカーポイントの Y 座標
anchor
[in] 表示テキストのアンカーポイントの位置の事前定義された 9 つの方法のうちの 1 つでの値。この値は、水平方向と垂直方向のテキスト整列の 2 つのフラグの組み合わせで設定されます。フラグ名は下の「注意事項」にリストされています。
data[]
[in] テキストが表示されるバッファ。バッファはグラフィックリソースの作成に意図されています。
幅
[in] ピクセル単位でのバッファ幅
height
[in] ピクセル単位でのバッファの高さ
color
[in] テキストの色
color_format
[in] 色のフォーマットは ENUM_COLOR_FORMAT 列挙値から設定されます。
戻り値
成功の場合は true、それ以外の場合は false。
注意事項
anchor で指定されたアンカーポイントは、水平方向と垂直方向のテキスト整列の 2 つのフラグの組み合わせで指定されます。水平方向テキスト整列のフラグ
- TA_LEFT – アンカーポイントが境界ボックスの左側に位置します。
- TA_CENTER – アンカーポイントが境界ボックスの中心に位置します。
- TA_RIGHT – アンカーポイントが境界ボックスの右側に位置します。
垂直方向テキスト整列のフラグ
- TA_TOP – アンカーポイントが境界ボックスの上側に位置します。
- TA_VCENTER – アンカーポイントが境界ボックスの中心に位置します。
- TA_BOTTOM – アンカーポイントが境界ボックスの下側に位置します。
フラグや指定されたアンカーポイントの可能な組み合わせは画像に示されています。
例:
//— 描画に使用されるキャンバスの幅と高さ //— 補助変数 //— 時針を描画するためのフォントを設定する //— グラpヒックリソースを更新する //— 時分のカウンタを増加する |
参照
リソース、ResourceCreate()、ResourceSave()、TextGetSize()、TextSetFont()
TextGetSize
この関数は現在のフォント設定での行の幅と高さを返します。
bool TextGetSize( |
パラメータ
text
[in] 長さと幅が取得される文字列
幅
[out] 幅を受け取る入力パラメータ
height
[out] 高さを受け取る入力パラメータ
戻り値
成功の場合は true、それ以外の場合は false。可能なエラーコードは下記です。
- ERR_INTERNAL_ERROR(4001) – operating system error(オペレーティングシステムエラー)
参照
リソース、ResourceCreate()、ResourceSave()、TextSetFont()、TextOut()
Originally posted 2019-07-30 09:39:26.