GetString

クラスインスタンスに割り当てられたグラフィックオブジェクトの string 型プロパティの値を取得するための API MQL5 の ObjectGetString() 関数への簡易化したアクセスを提供します。この関数の呼び出し方は 2 つあります。

正当性をチェックしないプロパティの値の取得

string  GetString(
  ENUM_OBJECT_PROPERTY_STRING  prop_id,        // string 型プロパティの識別子
  int                          modifier=-1      // 修飾子
  ) const

パラメータ

prop_id

[in]  グラフィックオブジェクトの string 型プロパティの識別子

modifier=-1

[in]  string 型修飾子(インデックス)

戻り値

string 型プロパティの値

正当性をチェックするプロパティの値の取得

bool  GetString(
  ENUM_OBJECT_PROPERTY_STRING  prop_id,      // string 型プロパティの識別子
  int                          modifier,    // 修飾子
  string&                      value        // 変数へのリンク
  ) const

パラメータ

prop_id

[in]  グラフィックオブジェクトの string 型プロパティの識別子

modifier

[in]  string 型修飾子(インデックス)

value

[out]  string 型プロパティの値を格納する変数への参照

戻り値

成功の場合は true、string 型プロパティが取得出来なかった場合は false

例:

//--- CChartObject::GetString の例
#include <ChartObjects\ChartObject.mqh>
//---
void OnStart()
 {
  CChartObject object;
  string       value;
  //--- 簡単な方法でチャートオブジェクトの名称を取得する
  printf("Object name is '%s'",object.GetString(OBJPROP_NAME));
  //--- 典型的な方法でチャートオブジェクトの名称を取得する
  if(!object.GetString(OBJPROP_NAME,0,value))
    {
    printf("Get string property error %d",GetLastError());
    return;
    }
  else
    printf("Object name is '%s'",value);
  for(int i=0;i<object.LevelsCount();i++)
    {
    //--- 簡単な方法でレベルの記述を取得する
    printf("Level %d description is '%s'",i,object.GetString(OBJPROP_LEVELTEXT,i));
    //--- 典型的な方法でレベルの記述を取得する
    if(!object.GetString(OBJPROP_LEVELTEXT,i,value))
       {
        printf("Get string property error %d",GetLastError());
        return;
       }
    else
        printf("Level %d description is '%s'",i,value);
    }
 }