Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Не сильно понятно зачем? Ведь если Ваша программа удалила объект, она об этом знает. А если объект удаляется и программа об этом "ни сном ни духом" - соответственно виноват Терминал.
не все так просто (жаль что из сервисдеска все исчезло, постараюсь вопроизвести проблему еще раз).
Необходимо обработать ситуацию, когда пользователь случайно удаляет объект с чарта. Но этот объект удалиться не должен. Например это подложка списка или выпадающего меню.
Значит в в коде OnChartEvent мне необходимо обработать данное событие и отрисовать контрол заново.
А значит я должен удалить все остальные объекты этого контрола. Думаю объяснять почему надо удалить все верхние объекты этого контрола не надо.
Итого получается, что обрабатывая это событие алгоритм попадает в глубокий зацикл. Скрипт будет удалять объекты и получать событие что объекты удалены и значит заново надо обработать данное событие - удалить и отрисовать... Короче алгоритмическая попа.
Как разрулить данную ситуацию в рамках текущего набора CHARTEVENT я не знаю. Поэтому и предлагаю, чтоб скрипт понимал - чье это было удаление - терминалом (хитрым юзером) или самим скриптом (таким же программистом).
Вы бы с этим столкнулись сами рано или поздно, когда начали бы активно работать с контролами.
не все так просто (жаль что из сервисдеска все исчезло, постараюсь вопроизвести проблему еще раз).
Как разрулить данную ситуацию в рамках текущего набора CHARTEVENT я не знаю. Поэтому и предлагаю, чтоб скрипт понимал - чье это было удаление - терминалом (хитрым юзером) или самим скриптом (таким же программистом).
Вы бы с этим столкнулись сами рано или поздно, когда начали бы активно работать с контролами.
Я с этим сталкивался. В одной из первых версий ст.библиотеки (в части элементов управления) этот механизм был реализован, но, по определённым причинам его убрали (я таки планирую его восстановить позже).
Там нет ничего умного. Каждый контрол должен уметь восстанавливать себя. Подложка при удалении, удаляет всё что на ней лежит. Дальше восстановление идёт по событиям.
Там нет ничего умного. Каждый контрол должен уметь восстанавливать себя. Подложка при удалении, удаляет всё что на ней лежит. Дальше восстановление идёт по событиям.
ну дык я ж про это и говорю, что при получении события удаления объекта контрол восстанавливает себя.
Но как только контрол начнет себя восстанавливать (удалять верхние объекты) то сразу вновь посыпятся события удаления.
короче, зачем мне снова распинаться и доказывать очевидную вещь :)) когда вашей компании понадобилось событие перемещения мышки для развития стандартной библиотеки, то его добавили аж бегом и без лишних вопросов. Практика двойных стандартов получается....
Но что то мне сдается, если бы это же предложение пошло от пользователя в сервисдеск, то его бы тягали еще месяц с выяснением а нафига компании это нужно.
Поверьте, это нужно! Я уже писал в сервисдеске, что стараемся не ради себя, а ради продвижения МТ5 и MQL5.
Мы честно проходим все пути для поиска быстрых и компактных решений своих задач на MQL. Если сталкиваемся с препятствием, то пишем в сервисдеск. Но там обычно понимания не встречаем.
Как я уже писал, я очень рад, что вы сами делаете библиотеку контролов. Хоть немного прочувствуете все наши проблемы, которые приходится решать без понимания с вашей стороны.
PS.
Виктор, извиняюсь, что так резко, просто на больную мозоль наступили.
Просто прошу, чтоб ваша компания прислушивались к просьбам программистов MQL. Ведь мы решаем намного разнообразнее задачи на MQL, чем можете себе представить. Иногда просто хочется чаще слышать ответ в сервисдеске: да, мы это сделаем в следующем билде.
Спасибо за понимание.
sergeev:
... когда вашей компании понадобилось событие перемещения мышки ...
Если бы Вы знали сколько мне для этого пришлось разбить кулаков о "взрослых" программистов...
Пытаюсь на основе скрипта открыть длинную позицию по инструменту, где реализовано биржевое исполнение ( SYMBOL_TRADE_EXECUTION_EXCHANGE, Exchange execution).
Получаю ошибку:
Т.е. терминал на видит ту цену, по которой хочу купить. Пробовал разные цены, всё равно выдаёт 0.00000.
Причём пробовал аналогичный скрипт запустить в МТ4 при тех же биржевых условиях, там сработал... в МТ5 - нет...
Просьба ткнуть носом в ошибку.
Это сообщение сервера, а не терминала. Больше по этому поводу сказать не могу.
Поставьте заявку в Сервисдеск.
Почему возникает ошибка переполнения массива?
Почему возникает ошибка переполнения массива?