Задача с кнопками ! - страница 8 12345678 Новый комментарий [Удален] 2015.09.24 12:51 #71 Тоже вариант. Только создавать на каждом тике их не нужно. Rorschach 2015.09.24 15:33 #72 static string name=NULL; for(int i=0;i<10;i++) { bool But=ObjectGetInteger(0,(string)i,OBJPROP_STATE); if(but && name!=(string)i) { ObjectSetInteger(0,name,OBJPROP_STATE,false); name=(string)i; } } Если имена кнопок не цифры, тогда названия пихаем в массив. Vladimir Pastushak 2015.09.28 17:07 #73 Rorschach: Если имена кнопок не цифры, тогда названия пихаем в массив.предыдущая кнопка остается нажатой до следующего вызова цикла ... Vladimir Pastushak 2015.09.28 17:14 #74 не знаю на сколько такой подход правильный но так проблема решена static string name=NULL; for(int i=0;i<10;i++) { bool But=ObjectGetInteger(0,(string)i,OBJPROP_STATE); if(but && name!=(string)i) { ObjectSetInteger(0,name,OBJPROP_STATE,false); name=(string)i; i=0; } } Rorschach 2015.09.30 22:07 #75 static string name=NULL; for(int i=0;i<10;i++) { bool But=ObjectGetInteger(0,(string)i,OBJPROP_STATE); if(But && name!=(string)i) { ObjectSetInteger(0,name,OBJPROP_STATE,false); name=(string)i; ChartRedraw(); break; } } Возможно так, не пробовал. Vladimir Pastushak 2015.09.30 22:15 #76 Rorschach: Возможно так, не пробовал.Я решил чуть по другомуstatic string name=NULL; for(int i=0;i<10;i++) { bool But=ObjectGetInteger(0,(string)i,OBJPROP_STATE); if(but && name!=(string)i) { ObjectSetInteger(0,name,OBJPROP_STATE,false); name=(string)i; i=0; } }Ваш последний вариант не проверял, но есть подозрение что если нажата кнопка с индексом 10 а потом с индексом 9 то с индексом 10 не отожмется так как цикл прерывается на 9 индексе ... Любые вопросы новичков по Обсуждение статьи "Пользовательские индикаторы Любой вопрос новичка, чтоб 12345678 Новый комментарий
Если имена кнопок не цифры, тогда названия пихаем в массив.
не знаю на сколько такой подход правильный но так проблема решена
Возможно так, не пробовал.
Я решил чуть по другому
Ваш последний вариант не проверял, но есть подозрение что если нажата кнопка с индексом 10 а потом с индексом 9 то с индексом 10 не отожмется так как цикл прерывается на 9 индексе ...