ValuesFunctionFormat (Get-Methode)

Gibt den Bezeichner auf die Funktion zurück, die das Format der Ausgabe der Werte an die Achse bestimmt.

DoubleToStringFunction  ValuesFunctionFormat()

Rückgabewert

Bezeichner auf die Funktion, die das Format der Ausgabe der Werte an die Achse bestimmt.

ValuesFunctionFormat (Set-Methode)

Setzt den Bezeichner auf die Funktion, die das Format der Ausgabe von Werten an die Achse bestimmt.

void  ValuesFunctionFormat(
   DoubleToStringFunction  func      // Funktion für die Umwandlung numerischer Werte in einen String 
   )

Parameter

func

[in]  Benutzerdefinierte Funktion für die Umwandlung numerischer Werte in einen String.

Beispiel:

graphics_close

Das Format der Ausgabe von Werten an die X-Achse wurde mithilfe des folgenden Codes geändert:

//+------------------------------------------------------------------+
//|                                              DateAxisGraphic.mq5 |
//|                         Copyright 2000-2024, MetaQuotes Ltd. |
//|                                             https://www.mql5.com |
//+------------------------------------------------------------------+
#include <Graphics\Graphic.mqh>
//--- array for store values
double arrX[];
double arrY[];
//+------------------------------------------------------------------+
//| Custom function for create values on X-axis                      |
//+------------------------------------------------------------------+
string TimeFormat(double x,void *cbdata)
  {
   return(TimeToString((datetime)arrX[ArraySize(arrX)-(int)x-1]));
  }
//+------------------------------------------------------------------+
void OnStart()
  {
   MqlRates rates[];
   CopyRates(Symbol(),Period(),0,100,rates);
   ArraySetAsSeries(rates,true);
   int size=ArraySize(rates);
   ArrayResize(arrX,size);
   ArrayResize(arrY,size);
   for(int i=0; i<size;++i)
     {
      arrX[i]=(double)rates[i].time;
      arrY[i]=rates[i].close;
     }
//--- create graphic
   CGraphic graphic;
   if(!graphic.Create(0,"DateAxisGraphic",0,30,30,780,380))
     {
      graphic.Attach(0,"DateAxisGraphic");
     }
//--- create curve
   CCurve *curve=graphic.CurveAdd(arrY,CURVE_LINES);
//--- gets the X-axis
   CAxis *xAxis=graphic.XAxis();
//--- sets the X-axis properties
   xAxis.AutoScale(false);
   xAxis.Type(AXIS_TYPE_CUSTOM);
   xAxis.ValuesFunctionFormat(TimeFormat);
   xAxis.DefaultStep(20.0);
//--- plot 
   graphic.CurvePlotAll();
   graphic.Update();
  }