При клике на объект генерируется событие CHARTEVENT_OBJECT_DRAG

 

Если объект выделен, то при клике мышкой генерируются два события: сначала CHARTEVENT_OBJECT_DRAG а затем CHARTEVENT_OBJECT_CLICK. При перетягивании объекта генерируются те же события (в той же последовательности). Так было всегда?

Это можно как-то обойти? Нужно чтобы корректно ловился каждый объект при любом клике (особенно, если установлено выделение объекта по одиночному клику мышкой). И отсечь моменты, когда это было в результате перетягивания...

Есть вариант проверки дат и цен текущего объекта и на основе этого отделять. Но это как-то сильно костыльно выглядит)

void OnChartEvent(const int id,
                  const long &lparam,
                  const double &dparam,
                  const string &sparam) {
   if(id == CHARTEVENT_OBJECT_CLICK) {
      Print("Click");
   } else if(id == CHARTEVENT_OBJECT_DRAG) {
      Print("Drag");
   }
}
Документация по MQL5: Константы, перечисления и структуры / Константы графиков / Типы событий графика
Документация по MQL5: Константы, перечисления и структуры / Константы графиков / Типы событий графика
  • www.mql5.com
Типы событий графика - Константы графиков - Константы, перечисления и структуры - Справочник MQL5 - Справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
 
В МТ5 нет такой заморочки. Наверно баг и отсутствие у разработчиков желания его исправлять.
Причина обращения: