Метки на индикаторах

 

Попробовал вывести метку Label  в окно индикатора, не выводится, а на окно графика выводиться.

Можно ли сделать чтобы метка выводилась именно в окне индикатора? 

 

надо воспользоваться штукой виндовс фаинд

в отличии от МКЛ4 виндовс фаинд тут работает более конректно и задание этой функции без параметров выводит текущее окно индикатора

 
Почитайте статью Создание индикатора с возможностями графического управления, там есть подобные примеры.

 
Rosh:
Почитайте статью Создание индикатора с возможностями графического управления, там есть подобные примеры.

Я говорю не про кнопки, а про метки (Label). Они не рисуются на окнах индикаторов.
 
Хорошо, проверим. Спасибо за сообщение.

 
Rinng писал(а)  :
Я говорю не про кнопки, а про метки (Label). Они не рисуются на окнах индикаторов.

Всё рисуется, внимательно следите за координатами метки, у них начало координат не угол основного графика, а угол подокна индикатора

поставьте координаты X и Y по нулям и увидите,  что всё рисуется

 

Попробуйте запустить приложенный индикатор, который сделан на основе BW-ZoneTrade

//+------------------------------------------------------------------+
//|  создает метку в окне индикатора                                 |
//+------------------------------------------------------------------+
void SetLabel(long win_handle,string name)
  {
//---
   string label_name=name;
   if(ObjectFind(win_handle,label_name)<0)
     {
      Print("Object",label_name,"not found. Error code =",GetLastError());
      //--- создадим объект Label
      bool res=ObjectCreate(0,label_name,OBJ_LABEL,win_handle,0,0);
      if(!res) Print("Object",label_name,"not created. Error code =",GetLastError());
      //--- установим координату X
      res=ObjectSetInteger(0,label_name,OBJPROP_XDISTANCE,20);
      if (!res) Print(GetLastError());
      //--- установим координату Y
      ObjectSetInteger(0,label_name,OBJPROP_YDISTANCE,30);
      //--- зададим цвет текста
      ObjectSetInteger(0,label_name,OBJPROP_COLOR,White);
      //--- установим текст для объекта Label
      ObjectSetString(0,label_name,OBJPROP_TEXT,UP);
      //--- установим шрифт надписи
      ObjectSetString(0,label_name,OBJPROP_FONT,"Wingdings");
      //--- установим размер шрифта
      ObjectSetInteger(0,label_name,OBJPROP_FONTSIZE,10);
      
      //--- укажем привязку к правому верхнему углу
      ObjectSetInteger(0,label_name,OBJPROP_CORNER,CORNER_RIGHT_UPPER);
      
      
      //--- запретим выделение объекта мышкой
      ObjectSetInteger(win_handle,label_name,OBJPROP_SELECTABLE,false);
      //--- отрисуем на графике
      ChartRedraw(0);
     }
  }
//+------------------------------------------------------------------+



Файлы:
 

Упс, ссори. Спс, понял в чём ошибка. Нужно использовать    int       nwin,          // индекс окна.