Русский

Справочник MQL4 Графические объекты ObjectName

ObjectName

Возвращает имя объекта по порядковому номеру в списке объектов.

string  ObjectName(
   int    object_index   // номер в списке объектов
   );

Параметры

object_index

[in]  Порядковый номер в списке объектов. Должен быть большим или равным 0 и меньшим, чем ObjectsTotal().

Возвращаемое значение

Имя объекта в случае удачи. Чтобы получить дополнительную информацию об ошибке, необходимо вызвать функцию GetLastError().

Пример:

//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart()
  {
   int i;
   long current_chart_id=ChartID();
//--- создаем несколько объектов типа label
   for(i=0; i<300; i+=10)
     {
      string obj_name="label_object"+IntegerToString(i);
      //--- создаем объект
      if(ObjectCreate(obj_name,OBJ_LABEL,0,0,0))
        {
         PrintFormat("Object %s created.",obj_name);
         //--- устанавливаем цвет
         ObjectSetInteger(current_chart_id,obj_name,OBJPROP_COLOR,MathRand());
         //--- устанавливаем текст
         ObjectSetString(current_chart_id,obj_name,OBJPROP_TEXT,StringFormat("Simple Label at y= %d",i));
         //-- устанавливаем координаты
         ObjectSet(obj_name,OBJPROP_XDISTANCE,i);
         ObjectSet(obj_name,OBJPROP_YDISTANCE,i);
         //-- перерисовываем график
         ChartRedraw(current_chart_id);
         Sleep(10);
        }
      else
        {
         Print("Ошибка создания объекта: код ошибки #",GetLastError());
        }
     }
//--- пауза в 3 секунды
   Sleep(3000);
//--- показываем список объектов
   int obj_total=ObjectsTotal();
   PrintFormat("Всего %d объектов",obj_total);
   string name;
   for(i=0;i<obj_total;i++)
     {
      name=ObjectName(i);
      PrintFormat("Объект %d: Имя объекта - %s",i,name);
     }
//--- удаляем все объекты
   ObjectsDeleteAll();
  }