GetInteger

Facilita el acceso a las funciones del API MQL5 ObjectGetInteger() obtiene las propiedades de tipo entero (tipo bool, char, uchar, short, ushort, int, uint, long, ulong, datetime, color) enlazadas a una instancia de la clase gráfica. Hay dos versiones distintas para llamar a esta función:

Obtener el valor de la propiedad sin hacer ninguna comprobación

long  GetInteger(
   ENUM_OBJECT_PROPERTY_INTEGER  prop_id,         // Identificador de las propiedades de tipo entero
   int                           modifier=-1      // Modificador 
   ) const

Parámetros

prop_id

[in]  Identificador de las propiedades de tipo entero del gráfico.

modifier=-1

[in]  Modificador (índice) de las propiedades integer.

Valor de retorno

Si se ejecuta correctamente devuelve el valor de la propiedad de tipo entero; en caso de error, devuelve 0.

Obtener el valor de la propiedad llevando a cabo una comprobación

bool  GetInteger(
   ENUM_OBJECT_PROPERTY_INTEGER  prop_id,      // Identificador de la propiedad integer
   int                           modifier,     // Modificador 
   long&                         value         // Enlace a la variable
   ) const

Parámetros

prop_id

[in]  ID propiedades de tipo integer del objeto.

modifier

[in]  Modificador (índice) de la propiedad integer.

value

[out]  Referencia a la variable que almacena los valores de las propiedades integer.

Valor de retorno

true - si se ejecuta correctamente, false - si no se puede obtener la propiedad integer.

Ejemplo:

//--- ejemplo de CChartObject::GetInteger
#include <ChartObjects\ChartObject.mqh> 
//--- 
void OnStart() 
  { 
   CChartObject object; 
   //--- obtiene el color del objeto gráfico por medio del método sencillo 
   printf("El color del objeto es %s",ColorToString(object.GetInteger(OBJPROP_COLOR),true)); 
   //--- obtiene el color del objeto gráfico por medio del método clásico 
   long color_value; 
   if(!object.GetInteger(OBJPROP_COLOR,0,color_value)) 
     { 
      printf("Error al obtener la propiedad integer %d",GetLastError()); 
      return
     } 
   else 
      printf("El color del objeto es %s",color_value); 
   for(int i=0;i<object.LevelsCount();i++) 
     { 
      //--- obtiene la anchura de los niveles por medio del método sencillo 
      printf("Nivel %d con anchura %d",i,object.GetInteger(OBJPROP_LEVELWIDTH,i)); 
      //--- obtiene la anchura de los niveles por medio del método clásico 
      long width_value; 
      if(!object.GetInteger(OBJPROP_LEVELWIDTH,i,width_value)) 
        { 
         printf("Error al obtener la propiedad integer %d",GetLastError()); 
         return
        } 
      else 
         printf("Nivel %d con anchura %d",i,width_value); 
     } 
  }