Обсуждение статьи "Рецепты MQL5 - Элементы управления в подокне индикатора - Кнопки" - страница 3

 
DC2008:

Хорошо. Значит новичку понятно для чего Вы используете таймер?

Должно быть понятно, ведь в статье есть пояснение и предложение альтернативы в качестве домашнего задания. )
 
tol64:
Должно быть понятно, ведь в статье есть пояснение и предложение альтернативы в качестве домашнего задания. )

Хорошо. Объясните лично мне: зачем нужен таймер?

 
DC2008:

Хорошо. Объясните лично мне: зачем нужен таймер?

Об этом почти в конце статьи написано. Перед видео.
 
tol64:
Об этом почти в конце статьи написано. Перед видео.

Вы что думаете, я не читал статью и не видел где Вы об таймере пишете? Докажите, что Ваши "рецепты" съедобны. "Разжуйте" для меня: зачем нужен таймер?

 
DC2008:

Вы что думаете, я не читал статью и не видел где Вы об таймере пишете? Докажите, что Ваши "рецепты" съедобны. "Разжуйте" для меня: зачем нужен таймер?

Цитирую из статьи:

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

... 

Иногда может быть вполне достаточно установить эту проверку по событию с идентификатором CHARTEVENT_CHART_CHANGE. 

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

 

Другими словами, Вы не можете объяснить зачем Вам понадобился таймер. Хорошо, читаем дальше:

tol64:

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

А это утверждение можете доказать?

 

А заодно, если Вас не затруднит, то покажите "начинающим" куда и как надо размещать функции кнопок.

 
DC2008:

Другими словами, Вы не можете объяснить зачем Вам понадобился таймер. Хорошо, читаем дальше:

Это уже смешно становится. Вот ответ (дублирую):

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

А это утверждение можете доказать?

Конечно! За любое слово могу ответить. )) Но если по честному то, если нашли несоответствие, Вы должны привести доказательства. Статья, кстати, была написана полгода назад и только сейчас перенесена на этот сайт. Не исключено, что за это время мог где-то образоваться баг.

Это как в Сервисдеске. Если нашли ошибку в терминале или языке MQL, то именно Вам нужно привести пример и последовательность действий для воспроизведения ошибки/несоответствия. 

На самом деле, Вы так сильно настаивали на том, действительно ли всё так, как написано, что я уже взял и сам проверил (ещё раз). Я обнаружил кое какой интересный момент. Он не был объявлен в анонсах, а может и был, но я не могу это найти. Это правда не лишает меня истины продублированного утверждения выше. Всё действительно так. Но мне всё же было бы интересно увидеть от Вас доказательство. А если Вы его приведёте, то я его опровергну. Так будет интереснее.

Договорились? ))

 
DC2008:

А заодно, если Вас не затруднит, то покажите "начинающим" куда и как надо размещать функции кнопок.

В этом примере функции кнопок размещены в функции OnInit(). Но давайте сначала разберёмся с доказательствами выше. ))
Документация по MQL5: Основы языка / Функции / Функции обработки событий
Документация по MQL5: Основы языка / Функции / Функции обработки событий
  • www.mql5.com
Основы языка / Функции / Функции обработки событий - Документация по MQL5
 
tol64:

Это уже смешно становится...

Хорошо, давайте посмеёмся. Статью написали Вы, "никто Вас за язык не тянул".

Итак, объяснение в виде цитат на необъяснимое - по крайней мере не уважительно к Вашим читателям. На вопросы надо отвечать примерами и ссылками на первоисточник.

Запутанный и перегруженный ненужными функциями код, только вводит в заблуждение "начинающих".

А то, что "функции кнопок размещены в функции OnInit" - очень смешно!