Ошибки, баги, вопросы - страница 929

 
Функция возвращает номер окна.Не правильно проверяете результат.
 
Konstantin83:
Функция ObjectFind как работает? Где ошибка в коде поиска объекта по имени? Свойства объекта изменяются, а сам объект не могу найти.

void OnStart()
  {
//---

   if(ObjectCreate(0,"test",OBJ_LABEL,0,0,0))
     {
      ObjectSetString(0,"test",OBJPROP_TEXT,"Init");
      if(ObjectFind(0,"test")<0)
        {
         ObjectSetString(0,"test",OBJPROP_TEXT,"Нашел объект с помощью функции ObjectFind");
        }
      else
        {
         ObjectSetString(0,"test",OBJPROP_TEXT,"Не нашел объект с помощью функции ObjectFind");
        }
     }
  }

Надо условие поменять:

if(ObjectFind(0,"test")>=0)
 
Contender:

Надо условие поменять:

 

Спасибо :)

Что то переклинило меня.

 
Konstantin83:

Спасибо :)

Что то переклинило меня.

Бывает :)
 

Коллеги, прошу консультации по выравниванию текста на чарте.

На чарт необходимо выводить некоторую текстовую информацию. Например, вот так:

 Пример вывода

Как видно из примера, текст форматируется следующим образом:

1. Наименование параметра выравнивается слева направо, с одинаковым началом от левого края.

2. Значения параметра выравнивается справа налево, с одинаковым началом от правого края.

В приведённом мной примере выше используется функция Comment(). Для визуализации примера я использовал подгонку текста с помощью пробелов.

 

Собственно, вопрос. Каким способом (с помощью каких функций) лучше реализовать данный механизм автоматического выравнивания с учётом минимальной потери производительности?

Буду признателен как за общий ответ, так и за приведённый код.

 

Может, кому будет интересно. В общем, проблема отчасти решена применением графического объекта OBJ_LABEL и использованием моноширинного шрифта.

В OnInit() создаю объекты, в OnDeinit() - удаляю. В процессе работы пытаюсь установить свойство OBJPROP_TEXT. Если ошибка, просто рапортую об этом в виде лога. Проверять на каждом тике/таймере, не удалил ли метку пользователь/другой советник - слишком затратно по ресурсом.

 

Чего не сумел решить - получить ширину установленной метки. Чтобы, грубо говоря, в зависимости от величины_значения удалять её верхний правый угол подальше, дабы не наслаивался на наименование_значения. Тупо подобрал некое комфортное расстояние, чтобы поместилось семизначное значение. Восьмизначное будет наслаиваться. Не изящно и не практично! :)

Документация по MQL5: Стандартные константы, перечисления и структуры / Константы объектов / Типы объектов
Документация по MQL5: Стандартные константы, перечисления и структуры / Константы объектов / Типы объектов
  • www.mql5.com
Стандартные константы, перечисления и структуры / Константы объектов / Типы объектов - Документация по MQL5
 
voix_kas:

Может, кому будет интересно. В общем, проблема отчасти решена применением графического объекта OBJ_LABEL и использованием моноширинного шрифта.

Используйте OBJ_EDIT ("Поле ввода") с запретом редактирования, ему можно задать размеры, цвета, шрифт и выравнивание текста с помощью OBJPROP_ALIGN.

Одно поле для наименования с ALIGN_LEFT, другое для значения с ALIGN_RIGHT.

Чтобы другая программа не удалила ваши объекты присваивайте уникальные имена.

Объекты созданные из программы пользователь изначально не может выделять и удалять, но если все таки удалит,  то отследить этот факт и пересоздать объект не сложно.

 

В сигналах глюки:
Пополнения: 1.68 USD############Брокер: Alpari-Demo
КТО  пополнилнил ??? кто подигрывает ???

 
Можно ли сделать так чтобы при оптимизации все вычисления уходили только в облако? Хотелось бы отключить от нагрузки все ядра процессора на моём компе, а то один агент не отключается.
 
paladin800:
Можно ли сделать так чтобы при оптимизации все вычисления уходили только в облако? Хотелось бы отключить от нагрузки все ядра процессора на моём компе, а то один агент не отключается.
Правой кнопкой в разделе Агенты и в контекстном меню Использовать снимите флажок Локальные агенты.
Причина обращения: