GetDouble

Fornisce l'accesso semplificato alle funzioni di API MQL5 ObjectGetDouble() per ricevere valori double (di tipo float e double) 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

double  GetDouble(
   ENUM_OBJECT_PROPERTY_DOUBLE  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 di una proprietà double - successo; EMPTY_VALUE - non può ricevere la proprietà double.

Ottenere il valore della proprietà in verifica della correttezza di tale trattamento

bool  GetDouble(
   ENUM_OBJECT_PROPERTY_DOUBLE  prop_id,      // ID della proprietà double
   int                          modifier,     // modificatore 
   double&                      value         // link alla variabile
   ) const

Parametri

prop_id

[in]  ID della proprietà double di un oggetto grafico.

modifier

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

value

[out]  Link alla variabile in cui piazzare il valore della proprietà double.

Valore di ritorno

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

Esempio:

//--- esempio per CChartObject::GetDouble
#include <ChartObjects\ChartObject.mqh> 
//--- 
void OnStart() 
  { 
   CChartObject object; 
   //--- 
   for(int i=0;i<object.LevelsCount();i++) 
     { 
      //--- ottiene i valori dei livelli per metodo semplice 
      printf("Livello %d value=%f",i,object.GetDouble(OBJPROP_LEVELVALUE,i)); 
      //--- ottiene i valori dei livelli dal metodo classico 
      double value; 
      if(!object.SetDouble(OBJPROP_LEVELVALUE,i,value)) 
        { 
         printf("Ottiene l'errore della proprietà double %d",GetLastError()); 
         return
        } 
      else 
         printf("Livello %d valore=%f",i,value); 
     } 
  }