Скачать MetaTrader 5

GetInteger

Обеспечивает упрощенный доступ к функциям API MQL5 ObjectGetInteger() для получения значений integer-свойств (имеющих типы bool, char, uchar, short, ushort, int, uint, long, ulong, datetime, color) привязанного к экземпляру класса графического объекта. Существуют два варианта вызова функции:

Получение значения свойства без проверки корректности

long  GetInteger(
   ENUM_OBJECT_PROPERTY_INTEGER  prop_id,         // идентификатор integer-свойства
   int                           modifier=-1      // модификатор 
   ) const

Параметры

prop_id

[in]  Идентификатор double-свойства графического объекта.

modifier=-1

[in]  Модификатор (индекс) double-свойства.

Возвращаемое значение

Значение integer-свойства – в случае удачи, 0 - если нет возможности получить integer-свойство.

Получение значения свойства с проверкой корректности такого обращения

bool  GetInteger(
   ENUM_OBJECT_PROPERTY_INTEGER  prop_id,      // идентификатор integer-свойства
   int                           modifier,     // модификатор 
   long&                         value         // ссылка на переменную 
   ) const

Параметры

prop_id

[in]  Идентификатор integer-свойства графического объекта.

modifier

[in]  Модификатор (индекс) integer-свойства.

value

[out]  Ссылка на переменную для размещения значения integer-свойства.

Возвращаемое значение

true – в случае удачи, false - если нет возможности получить integer-свойство.

Пример:

//--- example for CChartObject::GetInteger 
#include <ChartObjects\ChartObject.mqh> 
//--- 
void OnStart() 
  { 
   CChartObject object; 
   //--- get color of chart object by easy method 
   printf("Objects color is %s",ColorToString(object.GetInteger(OBJPROP_COLOR),true)); 
   //--- get color of chart object by classic method 
   long color_value; 
   if(!object.GetInteger(OBJPROP_COLOR,0,color_value)) 
     { 
      printf("Get integer property error %d",GetLastError()); 
      return
     } 
   else 
      printf("Objects color is %s",color_value); 
   for(int i=0;i<object.LevelsCount();i++) 
     { 
      //--- get levels width by easy method 
      printf("Level %d width is %d",i,object.GetInteger(OBJPROP_LEVELWIDTH,i)); 
      //--- get levels width by classic method 
      long width_value; 
      if(!object.GetInteger(OBJPROP_LEVELWIDTH,i,width_value)) 
        { 
         printf("Get integer property error %d",GetLastError()); 
         return
        } 
      else 
         printf("Level %d width is %d",i,width_value); 
     } 
  } 


Обновлено: 2015.12.03