GetDouble

Bietet einen einfachen Zugriff auf Funktionen API MQL5 ObjectGetDouble() zum Erhalten der double-Eigenschaften (der Typen float und double) eines an die Klasseninstanz gebundenen Objektes. Es gibt zwei Versionen vom Funktionsaufruf:

Erhalten von Eigenschaftswert ohne Validierung

double  GetDouble(
   ENUM_OBJECT_PROPERTY_DOUBLE  prop_id,         // Identifikator der double-Eigenschaft
   int                          modifier=-1      // Modifikator 
   ) const

Parameter

prop_id

[in]  Die Identifikator einer double-Eigenschaft eines grafischen Objektes.

modifier=-1

[in]  Modifikator (Index) der double-Eigenschaft.

Rückgabewert

Ein Wert der double-Eigenschaft beim Erfolg, EMPTY_VALUE - wenn double-Eigenschaft nicht erhalten werden kann.

Erhalten von Eigenschaftswert mit Validierung

bool  GetDouble(
   ENUM_OBJECT_PROPERTY_DOUBLE  prop_id,      // Identifikator der double-Eigenschaft
   int                          modifier,     // Modifikator
   double&                      value         // Referenz an die Variable
   ) const

Parameter

prop_id

[in]  Die Identifikator einer double-Eigenschaft eines grafischen Objektes.

modifier

[in]  Modifikator (Index) der double-Eigenschaft.

value

[out]  Die Referenz an die Variable um den Wert der double-Eigenschaft zu platzieren.

Rückgabewert

Gibt bei Erfolg true zurück, false wenn die double-Eigenschaft nicht erhalten werden konnte.

Beispiel:

//--- example for CChartObject::GetDouble 
#include <ChartObjects\ChartObject.mqh> 
//--- 
void OnStart() 
  { 
   CChartObject object; 
   //--- 
   for(int i=0;i<object.LevelsCount();i++) 
     { 
      //--- get levels value by easy method 
      printf("Level %d value=%f",i,object.GetDouble(OBJPROP_LEVELVALUE,i)); 
      //--- get levels value by classic method 
      double value; 
      if(!object.SetDouble(OBJPROP_LEVELVALUE,i,value)) 
        { 
         printf("Get double property error %d",GetLastError()); 
         return
        } 
      else 
         printf("Level %d value=%f",i,value); 
     } 
  }