Неправильная работа функции

 
void OnTick()
  {
   long Heigt=ChartGetInteger(0,CHART_HEIGHT_IN_PIXELS,1);
   Print("высота подокна в пикселях=",Heigt);
  }

при смене вкладки символа или когда окно не в фокусе функция неправильно выдает значение высоты.

причем такое поведение функции как в MT4 так и в MT5. 

 

Просмотрите эту тему: Старт терминала. Несколько событий CHARTEVENT_CHART_CHANGE подряд.

Всё дело в операционной сисиеме Windows - точнее в том, как она обрабатывает скрытые окна.

 

Спасибо за ссылку. Прочитал. Много думал. Возникло несколько вопросов, в том числе и к разработчикам.

1. Судя по дате темы, в которой вы обращались в сервисдеск прошло почти год. Почему в справке не отобразили особенности вызова данных функций.Ведь, я уверен не только вы и я столкнулись с этой проблемой. 

Я потратил несколько часов, чтобы отловить эту особенность.

2.А можно сделать так, чтобы функция возвращала ошибку, если окно не в фокусе. Или другой вариант, как узнать, что окно находится в фокусе.