GetInteger

Fornisce l'accesso semplificato alle funzioni di API MQL5 ObjectGetInteger() per ricevere i valori delle proprietà integer (di tipo bool, char, char, short, ushort, int, uint, long, ulong, datetime, color) di un oggetto grafico legato ad un'istanza della classe. Ci sono due versioni della chiamata di funzione:

Ottenere un valore della proprietà senza controllare la correttezza

long  GetInteger(
   ENUM_OBJECT_PROPERTY_INTEGER  prop_id,         // ID della proprietà integer
   int                           modifier=-1      // modificatore 
   ) const

Parametri

prop_id

[in]  ID dell'oggetto grafico proprietà double.

modifier=-1

[in] Modificatore (indice) di una proprietà double.

Valore di ritorno

Valore della proprietà integer - successo; 0 - se invece non può ricevere proprietà integer.

Ottenere il valore della proprietà verificando la correttezza del funzionamento

bool  GetInteger(
   ENUM_OBJECT_PROPERTY_INTEGER  prop_id,      // ID della proprietà integer
   int                           modifier,     // modificatore 
   long&                         value         // link alla variabile
   ) const

Parametri

prop_id

[in]  ID dell'oggetto grafico della proprietà integer.

modifier

[in]  Modificatore (indice) della proprietà integer.

value

[out]  Link alla variabile per piazzare in valore della proprietà integer.

Valore di ritorno

true - successo, false - non posso ottenere la proprietà integer.

Esempio:

//--- esempio per CChartObject::GetInteger
#include <ChartObjects\ChartObject.mqh> 
//--- 
void OnStart() 
  { 
   CChartObject object; 
   //--- ottiene il colore del oggetto chart per metodo semplice 
   printf("Il colore dell'oggetto è %s",ColorToString(object.GetInteger(OBJPROP_COLOR),true)); 
   //--- ottiene il colore dell'oggetto per metodo classico 
   long color_value; 
   if(!object.GetInteger(OBJPROP_COLOR,0,color_value)) 
     { 
      printf("Ottiene l'errore della proprietà integer %d",GetLastError()); 
      return
     } 
   else 
      printf("Il colore dell'oggetto %s",color_value); 
   for(int i=0;i<object.LevelsCount();i++) 
     { 
      //--- ottiene i livelli di spessore per metodo semplice 
      printf("Livello %d spessore= %d",i,object.GetInteger(OBJPROP_LEVELWIDTH,i)); 
      //--- ottiene i livelli con il metodo classico 
      long width_value; 
      if(!object.GetInteger(OBJPROP_LEVELWIDTH,i,width_value)) 
        { 
         printf("Ottiene l'errore della proprietà integer %d",GetLastError()); 
         return
        } 
      else 
         printf("Livello %d spessore= %d",i,width_value); 
     } 
  }