Скачать MetaTrader 5
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
Подключи MQL5 Cloud Network. Увеличивай свой рейтинг!
evnt
208
evnt 2015.03.23 12:25 

Все привет!

Советник выводит комментарий:

Comment(SomeText );

Комментарий всегда выводится в верхний левый угол графика, а там бывает что уже есть графическая информация + буковки мелковаты для меня + текст комментария бывает, что  состоит из нескольких строк = читать неудобно!

Есть ли возможность управлять текстом и расположением комментария? Я не нашел как это можно сделать, поэтому сделал свой комментарий через метку примерно так:

 ObjectCreate(CommentName,OBJ_LABEL,0,0,0,0); //создаю объект - метку для своего комментария

      ObjectSet(CommentName,OBJPROP_XDISTANCE,X); //устанавливаю  на графике свой комментарий по Х    

      ObjectSet(CommentName,OBJPROP_YDISTANCE,Y); //устанавливаю метку на графике свой комментарий по Y    

      ObjectSetText(CommentName,SomeText ,FontSize,Font,Cvet); //вывожу свой комментарий вместо Comment(SomeText );

Теперь могу двигать двигать метку с  комментарием в любое место на графике, задавать шрифт, размер и т.д. Но длинный текст отображается не полностью. Другими словами - полностью отображаются только короткие тексты, хотя никакие ошибки не выдаются. Вот функция для вывода

bool MyComment(string T)

{

   GetLastError();

   ObjectSetText(CommentName,T,FontSize,Font,Cvet);

   err=GetLastError();

   if(err!=0)

   {     

      return(false);

   }

   return(true);

}

2 вопроса:

1)Как можно отобразить сравнительно длинные тексты в метке OBJ_LABEL

 2) как задать размер и расположение текста комментария Comment?

Спасибо!

Ihor Herasko
8456
Ihor Herasko 2015.03.23 12:41  

1) Длина строки в полях графических объектов ограничена 62-я символами. Если сообщение больше этой длины, то нужно разбить его на несколько текстовых меток и выводить в строку или в несколько строк, как удобно.

2) Для OBJ_LABEL доступно указание угла привязки (OBJPROP_CORNER), а также способ привязки (OBJPROP_ANCHOR). Управление шрифтами - OBJPROP_FONT и OBJPROP_FONTSIZE. Смотрите пример здесь - https://docs.mql4.com/ru/constants/objectconstants/enum_anchorpoint.

evnt
208
evnt 2015.03.23 13:38  
Scriptong:

1) Длина строки в полях графических объектов ограничена 62-я символами. Если сообщение больше этой длины, то нужно разбить его на несколько текстовых меток и выводить в строку или в несколько строк, как удобно.

2) Для OBJ_LABEL доступно указание угла привязки (OBJPROP_CORNER), а также способ привязки (OBJPROP_ANCHOR). Управление шрифтами - OBJPROP_FONT и OBJPROP_FONTSIZE. Смотрите пример здесь - https://docs.mql4.com/ru/constants/objectconstants/enum_anchorpoint.

ОК, спасибо. с Label понятно, почему не отображалось, как раз по до 62 обрезает. А что насчет Comment()? Расположением/шрифтом никак нельзя управлять?
Ihor Herasko
8456
Ihor Herasko 2015.03.23 13:42  
evnt:
А что насчет Commentary()? Расположением/шрифтом никак нельзя управлять?

Я расписал оба пункта. В п. 2 дал ссылку на пример.

 

P. S. Исходил из того, что Commentary - это пользовательская функция, хотя Вы ее нигде не указали.

evnt
208
evnt 2015.03.23 13:54  
Scriptong:

Я расписал оба пункта. В п. 2 дал ссылку на пример.

 

P. S. Исходил из того, что Commentary - это пользовательская функция, хотя Вы ее нигде не указали.

Ой, сорри, опечатка вышла! Конечно,  Comment(). Это я все про функцию Comment() писал. Сейчас исправлю, выше
Ihor Herasko
8456
Ihor Herasko 2015.03.23 14:27  
evnt:
Ой, сорри, опечатка вышла! Конечно,  Comment(). Это я все про функцию Comment() писал. Сейчас исправлю, выше
При использовании Comment невозможно управление углом привязки, шрифтом и размером шрифта.
/
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий