ObjectSetInteger

Belirtilen nesne özelliğinin değerini ayarlar. Nesne özelliği datetime, int, color, bool veya char tiplerinde olmalıdır. Fonksiyonun iki çeşidi vardır.

Birinci versiyonda şekillendirici yer almaz

bool  ObjectSetInteger(
   long                             chart_id,          // çizelge tanımlayıcı
   string                           name,              // nesne ismi
   ENUM_OBJECT_PROPERTY_INTEGER     prop_id,           // özellik tanımlayıcısı
   long                             prop_value         // değer
   );

İkinci versiyonda değer, şekillendirici belirtilerek ayarlanır

bool  ObjectSetInteger(
   long                             chart_id,          // çizelge tanımlayıcı
   string                           name,              // nesne ismi
   ENUM_OBJECT_PROPERTY_INTEGER     prop_id,           // özellik tanımlayıcısı
   int                              prop_modifier,     // şekillendirici
   long                             prop_value         // değer
   );

Parametreler

chart_id

[in]  Çizelge tanımlayıcısı. 0, mevcut çizelge anlamına gelir.

name

[in]  Nesne ismi.

prop_id

[in]  Nesne özelliğinin tanıtıcısı. Değer, ENUM_OBJECT_PROPERTY_INTEGER sayımının değerlerinden biri olabilir.

prop_modifier

[in]  Belirtilen özelliğin şekillendiricisi. Fibonacci araçlarındaki ve Andrews Dirgenindeki seviye numarasını gösterir. Seviyelerin numaralandırılmasına sıfırdan başlanır.

prop_value

[in]  Özelliğin değeri.

Dönüş değeri

Grafiksel nesnenin özelliğini değiştirmek için oluşturulan komut, çizelgeye başarılı şekilde gönderilmişse 'true' değerine, aksi durumda 'false' değerine dönüş yapar. Hata ile ilgili daha fazla bilgi için GetLastError() fonksiyonunu çağırın.

Not

Fonksiyon, eşzamansız bir çağrı kullanır; bu, işlevin, belirtilen grafiğin sırasına eklenen komutun yürütülmesini beklemediği anlamına gelir. Bunun yerine, hemen kontrol döndürür.

Komut yürütme sonucunu kontrol etmek için, belirtilen nesne mülkiyetini isteyen bir fonksiyon kullanabilirsiniz. Bununla birlikte, bu tür işlevlerin bu çizelgenin sonuna eklendiğini ve yürütme sonucunu beklediklerini ve bu nedenle zaman alıcı olabileceğini unutmamalısınız. Bu özellik, bir grafikte çok sayıda nesneyle çalışırken dikkate alınmalıdır.

Web Renkleri tablosunun oluşturulmasına dair bir örnek

//+------------------------------------------------------------------+
//|                                               Table of Web Colors|
//|                         Copyright 2011, MetaQuotes Software Corp |
//|                                       https://www.metaquotes.net |
//+------------------------------------------------------------------+
#define X_SIZE 140      // bir edit nesnesinin genişliği
#define Y_SIZE 33       // bir edit nesnesinin yüksekliği
//+------------------------------------------------------------------+
//| Web renkleri için bir dizi                                       |
//+------------------------------------------------------------------+
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
  };
//+------------------------------------------------------------------+
//| Bir edit nesnesinin oluşturulup başlatılması                     |
//+------------------------------------------------------------------+
void CreateColorBox(int x,int y,color c)
  {
//--- yeni edit nesnesi için bir isim oluştur
   string name="ColorBox_"+(string)x+"_"+(string)y;
//--- yeni bir edit nesnesi oluştur
   if(!ObjectCreate(0,name,OBJ_EDIT,0,0,0))
     {
      Print("Oluşturulamadı: '",name,"'");
      return;
     }
//--- genişlik, yükseklik ve koordinatları ayarla
   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);
//--- metin rengini ayara
   if(clrBlack==c) ObjectSetInteger(0,name,OBJPROP_COLOR,clrWhite);
   else            ObjectSetInteger(0,name,OBJPROP_COLOR,clrBlack);
//--- arkaplan rengini ayarla
   ObjectSetInteger(0,name,OBJPROP_BGCOLOR,c);
//--- metni ayarla
   ObjectSetString(0,name,OBJPROP_TEXT,(string)c);
  }
//+------------------------------------------------------------------+
//| Script programı başlatma fonksiyonu                              |
//+------------------------------------------------------------------+
void OnStart()
  {
//--- 7x20 ölçülerinde, renkli edit nesnelerinden oluşan bir tablo oluştur
   for(uint i=0;i<140;i++)
      CreateColorBox(i%7,i/7,ExtClr[i]);
  }

Ayrıca Bakınız

Nesne Tipleri, Nesne Özellikleri