Здравствуйте, столкнулся с проблемой с именами обьектов которые создает индикатор. Индикатор создает обьект с именем состоящим из набора цифр
Как мне кодом можно обратиться именно к последнему созданному обьекту?
Можно перехватывать событие создания нового объекта и там обрабатывать. Но там могут быть нюансы - если есть программное переименование объектов, то оно их тоже будет отлавливать как вновь созданные (при программном переименовании объект удаляется и создается с новым именем как я понял). Вот здесь по этому нюансу создал тему: https://www.mql5.com/ru/forum/452444
![При программном переименовании объектов генерируется событие CHARTEVENT_OBJECT_DELETE При программном переименовании объектов генерируется событие CHARTEVENT_OBJECT_DELETE](https://c.mql5.com/36/81/pri-programmnom-pereimenovanii.jpg)
- 2023.08.14
- www.mql5.com
Надо проверить в каком порядке объекты в списке объектов.
string ObjectName( long chart_id, // идентификатор графика int pos, // номер в списке объектов int sub_window=-1, // номер окна int type=-1 // тип объекта );
Это может быть 0 или ObjectsTotal(0)-1
Здравствуйте, столкнулся с проблемой с именами обьектов которые создает индикатор. Индикатор создает обьект с именем состоящим из набора цифр
Как мне кодом можно обратиться именно к последнему созданному обьекту?
хинт: если ранее удалять все прочие объёкты то этот будет оставшимся и цикл полного перебора будет малым
:-)
А вообще универсально+надёжно - НИКАК, Только полный перебор и сравнения с прежними образцами
Есть такое свойство
OBJPROP_CREATETIME | datetime r/o |
Если в процессе жизни объекта в нем ничего не меняется, то можно попробовать.
чем это поможет ?
всё равно перебирать все объекты.
и есть сомнения по поводу сохранения OBJPROP_CREATETIME в шаблонах - скорее сбросится
Пока это только "умозрительно", не факт, что действительно поможет. Но направление мысли такое: перебрать все объекты и определить наибольшее время создания. Перебрать все объекты придется только один раз вместо двух раз (если говорить о варианте сравнения образов).
![MQL5 - Язык торговых стратегий для клиентского терминала MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
Здравствуйте, столкнулся с проблемой с именами обьектов которые создает индикатор. Индикатор создает обьект с именем состоящим из набора цифр
Как мне кодом можно обратиться именно к последнему созданному обьекту?