ChartGetDouble

返回指定图表的相关属性值。图表属性必须是双精度类型。有两个函数调用变体。

1. 直接返回属性值。

double  ChartGetDouble(
   long                         chart_id,        // 图表 ID
   ENUM_CHART_PROPERTY_DOUBLE   prop_id,         // 属性 ID
   int                          sub_window=0     // 子窗口号,如果需要的话
   );

2. 根据函数成功与否,返回 true 或 false。如果成功,属性值置于引用传递的目标变量double_var。

bool  ChartGetDouble(
   long                         chart_id,        // 图表 ID
   ENUM_CHART_PROPERTY_DOUBLE   prop_id,         // 属性 ID
   int                          sub_window,      // 子窗口号
   double&                      double_var       // 用于图表属性的目标变量
   );

参量

chart_id

[in]  图表 ID. 0 意味着当前图表。

prop_id

[in]  图表属性 ID. 该值可以是ENUM_CHART_PROPERTY_DOUBLE值中之一。

sub_window

[in]  图表子窗口数。对于第一种情况,默认值为0(图表主窗口)。属性大部分情况不需要子窗口数。

double_var

[out]  需求属性双精度类型的目标变量。

返回值

双精度值。

对于第二种调用情况,如果指定属性有效且其值置于double_var变量,返回true,否则返回 false。若获得额外错误信息,需要调用函数GetLastError()

注意

该函数为同步函数,这意味着它等待执行在其调用之前已添加到图表队列的所有命令。

示例:

void OnStart()
  {
   double priceMin=ChartGetDouble(0,CHART_PRICE_MIN,0);
   double priceMax=ChartGetDouble(0,CHART_PRICE_MAX,0);
   Print("CHART_PRICE_MIN =",priceMin);
   Print("CHART_PRICE_MAX =",priceMax);
  }