ObjectSetInteger

函数建立类似物件属性值,物件属性一定是日期时间,整型,颜色,布尔或者字符 类型。有2个变量函数可以使用。

设置属性值,无修饰符

bool  ObjectSetInteger(
   long                             chart_id,          // 图表标识符
   string                           name,              // 物件名称
   ENUM_OBJECT_PROPERTY_INTEGER     prop_id,           // 属性
   long                             prop_value         // 值
   );

设置表明修饰符属性值

bool  ObjectSetInteger(
   long                             chart_id,          // 图表标识符
   string                           name,              // 物件名称
   ENUM_OBJECT_PROPERTY_INTEGER     prop_id,           // 属性
   int                              prop_modifier,     // 修饰符
   long                             prop_value         // 值
   );

参量

chart_id

[in]  图表标识符,0代表当前图表。

name

[in]  物件名称。

prop_id

[in] 物件属性ID。值可以是 ENUM_OBJECT_PROPERTY_INTEGER 值中的一个。

prop_modifier

[in]  指定属性修饰语。表示 斐波纳契工具 水平线数量和安德鲁分叉图解物件,水平线编号从0开始。

prop_value

[in]  属性值。

返回值

如果改变图解物件属性的命令成功发送到图表该函数返回true。否则返回false。调用函数GetLastError() 读取更多关于错误信息。

注意

这个函数使用非同步调用,这意味着这个函数不等待执行已入列图表的命令。相反,而是立即返回控制。

若要检查命令执行结果,您可以使用请求对象属性的函数。但是,您需要牢记的是这类函数将被加入到图表的队尾,需要等待执行结果,因此,可能会耗费大量时间。当处理图表上的大量对象时应该考虑这个特性。

如何创建网络颜色表格的示例

//+------------------------------------------------------------------+
//|                                               Table of Web Colors|
//|                         Copyright 2011, MetaQuotes Software Corp |
//|                                       https://www.metaquotes.net |
//+------------------------------------------------------------------+
#define X_SIZE 140      // 编辑物件的宽度
#define Y_SIZE 33       // 编辑物件的高度
//+------------------------------------------------------------------+
//| 网络颜色数组                                                       |
//+------------------------------------------------------------------+
color ExtClr[140]=
  {
   clrAliceBlue,clrAntiqueWhite,clrAqua,clrAquamarine,clrAzure,clrBeige,clrBisque,clrBlack,clrBlanchedAlmond,
   clrBlue,clrBlueViolet,clrBrown,clrBurlyWood,clrCadetBlue,clrChartreuse,clrChocolate,clrCoral,clrCornflowerBlue,
   clrCornsilk,clrCrimson,clrCyan,clrDarkBlue,clrDarkCyan,clrDarkGoldenrod,clrDarkGray,clrDarkGreen,clrDarkKhaki,
   clrDarkMagenta,clrDarkOliveGreen,clrDarkOrange,clrDarkOrchid,clrDarkRed,clrDarkSalmon,clrDarkSeaGreen,
   clrDarkSlateBlue,clrDarkSlateGray,clrDarkTurquoise,clrDarkViolet,clrDeepPink,clrDeepSkyBlue,clrDimGray,
   clrDodgerBlue,clrFireBrick,clrFloralWhite,clrForestGreen,clrFuchsia,clrGainsboro,clrGhostWhite,clrGold,
   clrGoldenrod,clrGray,clrGreen,clrGreenYellow,clrHoneydew,clrHotPink,clrIndianRed,clrIndigo,clrIvory,clrKhaki,
   clrLavender,clrLavenderBlush,clrLawnGreen,clrLemonChiffon,clrLightBlue,clrLightCoral,clrLightCyan,
   clrLightGoldenrod,clrLightGreen,clrLightGray,clrLightPink,clrLightSalmon,clrLightSeaGreen,clrLightSkyBlue,
   clrLightSlateGray,clrLightSteelBlue,clrLightYellow,clrLime,clrLimeGreen,clrLinen,clrMagenta,clrMaroon,
   clrMediumAquamarine,clrMediumBlue,clrMediumOrchid,clrMediumPurple,clrMediumSeaGreen,clrMediumSlateBlue,
   clrMediumSpringGreen,clrMediumTurquoise,clrMediumVioletRed,clrMidnightBlue,clrMintCream,clrMistyRose,clrMoccasin,
   clrNavajoWhite,clrNavy,clrOldLace,clrOlive,clrOliveDrab,clrOrange,clrOrangeRed,clrOrchid,clrPaleGoldenrod,
   clrPaleGreen,clrPaleTurquoise,clrPaleVioletRed,clrPapayaWhip,clrPeachPuff,clrPeru,clrPink,clrPlum,clrPowderBlue,
   clrPurple,clrRed,clrRosyBrown,clrRoyalBlue,clrSaddleBrown,clrSalmon,clrSandyBrown,clrSeaGreen,clrSeashell,
   clrSienna,clrSilver,clrSkyBlue,clrSlateBlue,clrSlateGray,clrSnow,clrSpringGreen,clrSteelBlue,clrTan,clrTeal,
   clrThistle,clrTomato,clrTurquoise,clrViolet,clrWheat,clrWhite,clrWhiteSmoke,clrYellow,clrYellowGreen
  };
//+------------------------------------------------------------------+
//| 创建和初始化编辑物件                                                |
//+------------------------------------------------------------------+
void CreateColorBox(int x,int y,color c)
  {
//--- 生成新编辑物件的名称
   string name="ColorBox_"+(string)x+"_"+(string)y;
//--- 创建新的编辑物件
   if(!ObjectCreate(0,name,OBJ_EDIT,0,0,0))
     {
      Print("Cannot create: '",name,"'");
      return;
     }
//--- 设置坐标,宽度和高度
   ObjectSetInteger(0,name,OBJPROP_XDISTANCE,x*X_SIZE);
   ObjectSetInteger(0,name,OBJPROP_YDISTANCE,y*Y_SIZE);
   ObjectSetInteger(0,name,OBJPROP_XSIZE,X_SIZE);
   ObjectSetInteger(0,name,OBJPROP_YSIZE,Y_SIZE);
//--- 设置文本颜色
   if(clrBlack==c) ObjectSetInteger(0,name,OBJPROP_COLOR,clrWhite);
   else            ObjectSetInteger(0,name,OBJPROP_COLOR,clrBlack);
//--- 设置背景色
   ObjectSetInteger(0,name,OBJPROP_BGCOLOR,c);
//--- 设置文本
   ObjectSetString(0,name,OBJPROP_TEXT,(string)c);
  }
//+------------------------------------------------------------------+
//| 脚本程序开始函数                                                   |
//+------------------------------------------------------------------+
void OnStart()
  {
//--- 创建颜色编辑物件的7x20表格
   for(uint i=0;i<140;i++)
      CreateColorBox(i%7,i/7,ExtClr[i]);
  }

另见

物件类型物件属性