ObjectSetInteger

この関数は、対応するオブジェクトプロパティの値を設定します。オブジェクトプロパティは、datetime、int、color、bool、またはchar型である必要があります。この関数には2つのバリアントがあります。

修飾子なしのプロパティ値の設定:

bool  ObjectSetInteger(
   long     chart_id,       // chart identifier
   string   object_name,    // object name
   int      prop_id,        // property
   long     prop_value      // value
   );

修飾子を示すプロパティ値の設定:

bool  ObjectSetInteger(
   long     chart_id,        // chart identifier
   string   object_name,     // object name
   int      prop_id,         // property
   int      prop_modifier,   // modifier
   long     prop_value       // value
   );

パラメーター

chart_id

[in]チャート識別子。0は現在のチャートを意味します。

object_name

[入力]オブジェクトの名前。

prop_id

[入力]オブジェクトプロパティのID。値は、ENUM_OBJECT_PROPERTY_INTEGER列挙の値のいずれかです。

prop_modifier

[in]指定されたプロパティの修飾子。これは、フィボナッチツールとグラフィカルオブジェクトAndrewの熊手でのレベルの数を示します。レベルの数え方はゼロから始まります。

prop_value

[入力]プロパティの値。

戻り値

この関数は、グラフィカルオブジェクトのプロパティを変更するコマンドがチャートに正常に送信された場合にのみtrueを返します。それ以外の場合は、falseを返します。エラーの詳細については、GetLastError()を呼び出してください

注意

現在のチャートでこの関数を使用すると、このチャートに直接アクセスし、結果がすぐに返されます。別のチャートにオブジェクトプロパティを設定するために、非同期呼び出しが使用されます。非同期呼び出しとは、別のチャートのキューに追加されたコマンドの実行を関数が待機しないことを意味します。代わりに、すぐに制御を返します。

現在のチャート以外のチャートでコマンドを実行した結果を確認するには、指定したオブジェクトプロパティを確認する関数を使用できます。ただし、そのような関数はそのチャートのキューの最後に追加され、実行結果を待つため、時間がかかる場合があることに注意してください。チャート上の多数のオブジェクトを操作する場合、この機能を考慮する必要があります。

Webカラーのテーブルを作成する方法の例

//+——————————————————————+
//|                                               Table of Web Colors|
//|                         Copyright 2011, MetaQuotes Software Corp |
//|                                        https://www.metaquotes.net |
//+——————————————————————+
#define X_SIZE 140      // width of an edit object
#define Y_SIZE 33       // height of an edit object
//+——————————————————————+
//| Array of web colors                                              |
//+——————————————————————+
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
  };
//+——————————————————————+
//| Creating and initializing an edit object                         |
//+——————————————————————+
void CreateColorBox(int x,int y,color c)
  {
//— generate a name for a new edit object
   string name=“ColorBox_”+(string)x+“_”+(string)y;
//— create a new edit object
   if(!ObjectCreate(0,name,OBJ_EDIT,0,0,0))
     {
      Print(“Cannot create: ‘”,name,“‘”);
      return;
     }
//— set coordinates, width and height
   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);
//— set text color
   if(clrBlack==c) ObjectSetInteger(0,name,OBJPROP_COLOR,clrWhite);
   else            ObjectSetInteger(0,name,OBJPROP_COLOR,clrBlack);
//— set background color
   ObjectSetInteger(0,name,OBJPROP_BGCOLOR,c);
//— set text
   ObjectSetString(0,name,OBJPROP_TEXT,(string)c);
  }
//+——————————————————————+
//| Script program start function                                    |
//+——————————————————————+
void OnStart()
  {
//— create 7×20 table of colored edit objects
   for(uint i=0;i<140;i++)
      CreateColorBox(i%7,i/7,ExtClr[i]);
  }

Leave a Reply

Your email address will not be published. Required fields are marked *

CAPTCHA


You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">