Вопросы от "чайника" - страница 30

 
Silent:

Непонятно, почему вообще работает.

Правильный пример внизу страницы

Там еще поиск сначала идет, и перерисовка - где то попадалось, что лучше подстраховаться.

// Сильно не бить, сам учусь.  

Сильно не разбирался, но на первый взгляд вполне нормальный код.

Silent:

Выделил ошибки, из-за которых код работать, вроде бы, не должен. Сравните свой код с тем, который в примере по ссылке.

Может я слепой, но в чем именно ошибки?
 
Interesting:
Сильно не разбирался, но на первый взгляд вполне нормальный код.
Может я слепой, но в чем именно ошибки?

В моем посте в коде выделено красным - нет значений у id графика, тoчки приbязки, углa пpивязки (он вообще зачем, если картинку не крутим?), координат.

 
Silent:

В моем посте в коде выделено красным - нет значений у id графика, тoчки приbязки, углa пpивязки (он вообще зачем, если картинку не крутим?), координат.

А я думал, что я самый начинающий.))) Это функция. В неё передаются значения.))
 
tol64:
А я думал, что я самый начинающий.))) Это функция. В неё передаются значения.))
Откуда берутся значения?
 
Silent:
Откуда берутся значения?

Да откуда угодно. Внешние параметры, глобальные переменные, локальные переменные. Либо сразу можно занести значения.

Пример:

Create_BMP_Label(0,TS_bmp_nm,TS_bmp_pth,ANCHOR_RIGHT_UPPER,CORNER_RIGHT_UPPER,x,y+50);
Документация по MQL5: Основы языка / Переменные / Глобальные переменные
Документация по MQL5: Основы языка / Переменные / Глобальные переменные
  • www.mql5.com
Основы языка / Переменные / Глобальные переменные - Документация по MQL5
 
tol64:

Да откуда угодно. Внешние параметры, глобальные переменные, локальные переменные. Либо сразу можно занести значения.

В Вашем коде - откуда?
 
Silent:

В моем посте в коде выделено красным - нет значений у id графика, тoчки приbязки, углa пpивязки (он вообще зачем, если картинку не крутим?), координат.

1. Про Id - там значений и не должно быть (как я понял ожидается дефаултный 0), а то чно в комментариии написано так скорей всего это "для себя".

2. Про углы привязки - Привязка идет к определенному углу гррафика (левый-верхний, правый-верхний, нижний-правый и нижний-левый). Указывая эти параметры мы определяем к каакому углу привязан объект.

Вот такой код создаст LABEL в нижнем-правом углу

ObjectCreate(0,"Demo",OBJ_LABEL,0,0,1.0);
ObjectSetInteger(0,"Demo",OBJPROP_TIMEFRAMES,OBJ_ALL_PERIODS);
ObjectSetInteger(0,"Demo",OBJPROP_CORNER,CORNER_RIGHT_LOWER);
ObjectSetInteger(0,"Demo",OBJPROP_ANCHOR,ANCHOR_RIGHT_LOWER);
ObjectSetInteger(0,"Demo",OBJPROP_XDISTANCE,3);
ObjectSetInteger(0,"Demo",OBJPROP_YDISTANCE,1);
ObjectSetString(0,"Demo",OBJPROP_FONT,"Times New Roman");
ObjectSetInteger(0,"Demo",OBJPROP_FONTSIZE,8);
ObjectSetInteger(0,"Demo",OBJPROP_COLOR,Tomato);
ObjectSetInteger(0,"Demo",OBJPROP_SELECTABLE,false);
ObjectSetString(0,"Demo",OBJPROP_TEXT,m_text);

А вот этот отобразит тот же самый объект только уже в левом-нижнем

ObjectCreate(0,"Demo",OBJ_LABEL,0,0,1.0);
ObjectSetInteger(0,"Demo",OBJPROP_TIMEFRAMES,OBJ_ALL_PERIODS);
ObjectSetInteger(0,"Demo",OBJPROP_CORNER,CORNER_LEFT_LOWER);
ObjectSetInteger(0,"Demo",OBJPROP_ANCHOR,ANCHOR_LEFT_LOWER);
ObjectSetInteger(0,"Demo",OBJPROP_XDISTANCE,3);
ObjectSetInteger(0,"Demo",OBJPROP_YDISTANCE,1);
ObjectSetString(0,"Demo",OBJPROP_FONT,"Times New Roman");
ObjectSetInteger(0,"Demo",OBJPROP_FONTSIZE,8);
ObjectSetInteger(0,"Demo",OBJPROP_COLOR,Tomato);
ObjectSetInteger(0,"Demo",OBJPROP_SELECTABLE,false);
ObjectSetString(0,"Demo",OBJPROP_TEXT,m_text);

Поменялись как многие уже поняли только две строки, вот эти

ObjectSetInteger(0,"Demo",OBJPROP_CORNER,CORNER_LEFT_LOWER);
ObjectSetInteger(0,"Demo",OBJPROP_ANCHOR,ANCHOR_LEFT_LOWER);
Документация по MQL5: Стандартные константы, перечисления и структуры / Константы объектов / Угол привязки
Документация по MQL5: Стандартные константы, перечисления и структуры / Константы объектов / Угол привязки
  • www.mql5.com
Стандартные константы, перечисления и структуры / Константы объектов / Угол привязки - Документация по MQL5
 
Silent:
В Вашем коде - откуда?
Не пинципиально, в обычном режиме прорисует при правильных значениях. В режиме визуализации с BMP-графикой скорей всего пока будут проблемы (уверен процентов на 90).
 
Silent:
В Вашем коде - откуда?

Из глобальных переменных (выделены красным).

Create_BMP_Label(0,TS_bmp_nm,TS_bmp_pth,ANCHOR_RIGHT_UPPER,CORNER_RIGHT_UPPER,x,y+50);
Документация по MQL5: Основы языка / Переменные / Глобальные переменные
Документация по MQL5: Основы языка / Переменные / Глобальные переменные
  • www.mql5.com
Основы языка / Переменные / Глобальные переменные - Документация по MQL5
 
tol64:

Из глобальных переменных (выделены красным).

Инициализация - внутри функции, значения - из глобальных? Хм.

Из хелпа, для сравнения

#define  UP          "\x0431"
//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart()
  {
//---
   string label_name="my_OBJ_LABEL_object";
   if(ObjectFind(0,label_name)<0)
     {
      Print("Object ",label_name," not found. Error code = ",GetLastError());
      //--- создадим объект Label
      ObjectCreate(0,label_name,OBJ_LABEL,0,0,0);           
      //--- установим координату X
      ObjectSetInteger(0,label_name,OBJPROP_XDISTANCE,200);
      //--- установим координату Y
      ObjectSetInteger(0,label_name,OBJPROP_YDISTANCE,300);
      //--- зададим цвет текста
      ObjectSetInteger(0,label_name,OBJPROP_COLOR,clrWhite);
      //--- установим текст для объекта Label
      ObjectSetString(0,label_name,OBJPROP_TEXT,UP);
      //--- установим шрифт надписи
      ObjectSetString(0,label_name,OBJPROP_FONT,"Wingdings");
      //--- установим размер шрифта
      ObjectSetInteger(0,label_name,OBJPROP_FONTSIZE,10);
      //--- повернем на 45 градусов по часовой стрелке
      ObjectSetDouble(0,label_name,OBJPROP_ANGLE,-45);
      //--- запретим выделение объекта мышкой
      ObjectSetInteger(0,label_name,OBJPROP_SELECTABLE,false);
      //--- отрисуем на графике
      ChartRedraw(0);                                      
     }
  }
Причина обращения: