Ошибки, баги, вопросы - страница 1258
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
кстати кто знает как сделать что бы при нажатии на кнопку она продавливалась, если ЛКМ нажата и отпускалась если ЛКМ отпущена?
а то что бы нажать кнопку нужно кликнуть и отпустить и что бы отжать кнопку нужно кликнуть и отпустить, бред )
ЗЫ: можно конечно менять свойство сразу после того как пустили ЛКМ, но неужто это так делается? )
кстати кто знает как сделать что бы при нажатии на кнопку она продавливалась, если ЛКМ нажата и отпускалась если ЛКМ отпущена?
а то что бы нажать кнопку нужно кликнуть и отпустить и что бы отжать кнопку нужно кликнуть и отпустить, бред )
ЗЫ: можно конечно менять свойство сразу после того как пустили ЛКМ, но неужто это так делается? )
Да. Придётся самому контролировать состояние объектов, если хочется как-то по своему. )
всё бы ни чего, но кнопка не нажимается, когда нажата ЛКМ, а нажимается лишь тогда когда ЛКМ отпускается, бред )
ЗЫ: хочешь нажать кнопку? отпусти её )
Но если сделать по другому, с учётом того что OnChartEvent не работает в тестере, то вообще ни как в тестере с копками не поработать.
всё бы ни чего, но кнопка не нажимается, когда нажата ЛКМ, а нажимается лишь тогда когда ЛКМ отпускается, бред )
ЗЫ: хочешь нажать кнопку? отпусти её )
Но если сделать по другому, с учётом того что OnChartEvent не работает в тестере, то вообще ни как в тестере с копками не поработать.
С тестером пока много чего не работает. Остаётся писать в сервисдеск и затем следить за обновлениями. )
А вне тестера для элементов управления нужно писать свои обработчики, чтобы они работали так, как хочется.
всё бы ни чего, но кнопка не нажимается, когда нажата ЛКМ, а нажимается лишь тогда когда ЛКМ отпускается, бред )
ЗЫ: хочешь нажать кнопку? отпусти её )
Но если сделать по другому, с учётом того что OnChartEvent не работает в тестере, то вообще ни как в тестере с копками не поработать.
OnChartEvent() обрабатывает типичные события графика и пользовательские. В части пользовательских событий этот обработчик в Тестере работает!!! Посмотри мою статью Рецепты MQL5 - обработка пользовательских событий графика, там есть робот CustomEventProcessor. В Тестере он торгует.
Беда Тестера - это графика... писал раньше в Сервисдеск по поводу графики, пока только обещания...
OnChartEvent() обрабатывает типичные события графика и пользовательские. В части пользовательских событий этот обработчик в Тестере работает!!! Посмотри мою статью Рецепты MQL5 - обработка пользовательских событий графика, там есть робот CustomEventProcessor. В Тестере он торгует.
Беда Тестера - это графика... писал раньше в Сервисдеск по поводу графики, пока только обещания...
Ситуация такая: Создаю на графике объект OBJ_TEXT. Затем удаляю вручную этот OBJ_TEXT с графика. Затем пробую найти на графике удалённый объект - получаю ошибку (здесь всё логично: объект был удалён значит его нельзя найти). Дальше пытаюсь переместить точку привязки удалённого объекта OBJ_TEXT с помощью ObjectMove - но не получаю ошибки.
Вопрос: должна ли ObjectMove выдавать ошибку при попытке переместить точку привязки удалённого OBJ_TEXT?
Прошу подсказать, кто знает: при попытке вывести индикатор в визуализаторе (тестере) появляется ошибка 4014, хотя при работе этого же кода в окне терминала такой ошибки не возникает.
Код такой:
Indic_Handle[Indic_Total-1]=iMA(NULL,0,MA_Period,MA_Shift,MODE_LWMA,PRICE_CLOSE);
if(Indic_Handle[Indic_Total-1]==INVALID_HANDLE)
{Error_Message;return(false);}
if(F_If_Indic_Exist(Indic_Handle[Indic_Total-1])==false) // Проверяем есть ли уже индикатор с таким хендлом. Если нет - добавлем новый индикатор
if(ChartIndicatorAdd(0,0,Indic_Handle[Indic_Total-1])==false)
{Error_Message;return(false);}
Команда "Error_Message" определена макросом:
#define Error_Message_Exp Alert(__FILE__+": "+__FUNCTION__+": Error at line "+(string)__LINE__+". Last Error code: "+(string)GetLastError())
При исполнении в терминале: Код работает стандартно, без ошибок. Индикатор выводится на график, переменной "Indic_Handle[Indic_Total-1]" присваивается значение хендла.
А при исполнении в тестере и/или в визуализаторе. В журнал выводится ошибка:
2014.12.15 21:16:10 Core 1 2014.01.01 00:00:00 Alert: GA_Incl.mqh: F_Offspr_Init: Error at line 149. Last Error code: 4014
(строчка "149" - это строчка "{Error_Message;return(false);}" под строчкой "148": "if(ChartIndicatorAdd(0,0,Indic_Handle[Indic_Total-1])==false)"
Очевидно, что ошибка возникает при выполнении функции "ChartIndicatorAdd", которая по разному выполняется в среде тестера и среде терминала.
Расшифровка кода ошибки ясности не добавляет:
ERR_FUNCTION_NOT_ALLOWED
4014
Системная функция не разрешена для вызова
На форуме я нашел упоминание о возникновении такой ошибки в такой же ситуации у еще одного пользователя, но его вопрос остался без ответа. (https://www.mql5.com/ru/forum/1111/page763#comment_208678)
Выяснил, что если продолжить выполнение программы в тестере, несмотря на ошибку, то нужный индикатор все-таки наносится на график. Но при этом, хендл появившегося индикатора не соответствует значению хенлда в переменной Indic_Handle[Indic_Total-1]. (В дальнейшем, в ходе выполнения программы, реализовано обращение к индикатору по хендлу) А сам индикатор создается через несколько тиков, после вызова команды ChartIndicatorAdd.
Прошу помочь
Спасибо.
Точно, не принтует. Но работает. Попробуй графикой событие отследить.