Библиотеки: ControlsComm.mqh

 

ControlsComm.mqh:

Библиотека функций ControlsComm.mqh позволяет легко строить интерактивные системы управления с применением стандартных графических объектов терминала MetaTrader4.

Author: Rustamzhan Salidzhanov

 
а хде красивое кино? :)
 
 
Отличная библиотека! Пожелание небольшое - снять выделение объекта после отработки команды.
 
yuritch:

Отличная библиотека! Пожелание небольшое - снять выделение объекта после отработки команды.

возможно - нужно просто удалить объект с графика после отработки команды, после чего система его перерисует. Но тогда нужно будет вызывать функцию SetControls(wnd); на каждой итерации, что увеличит нагрузку на треминал. Вы думаете это целесообразно?

Вот необходимые изменения в управляющем скрипте для этого:

   while(!IsStopped()){
        int comm = GetControls(wnd,true);// ЗАПРАШИВАЕМ НОМЕР ОТРАБОТАВШЕЙ КОМАНДЫ
        if(comm!=0){
                //----Изменения необходимые для снятия выделения с отработавшего контрола
                int comNm = MathAbs(comm)-1;
                ObjectDelete(GcontNms[comNm][0]);
                SetControls(wnd);
                //----Конец изменений
 
Обнаружен баг - при наличии дополнительного под окна (под окон) на графике, будет неправильно обрабатываться (рассчитываться) положение сброса по горизонтали (в шкале цены). Как обойти этот момент пока не знаю.
 
xrust:
Обнаружен баг -... ... ...

Мб, при наличии(появлении) подокон что-нибудь по аналогии с калибровкой сенсорного экрана?

Для начала вручную-полуавтоматом, а там, смотришь, идея озарит - и афтоматически ))

 

Библиотека, то что надо. 

Только не понял, коментарий в коде

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


в какое место втыкать инициализацию контролов.  Пробовал после объявления массивов, но компилятор предупреждает  'GcontNms' - expression on global scope not allowed


 
Автор, не нашел ли ты как исправить баг с подокном???
Причина обращения: