Ошибка 4202

 
Добрый день,

Можете пожалуйта подсказать в чем проблема? При успешном удалении графического объекта, выходит ошибка 4202. Опять же обьект полностью удаляется из графика, но причина почему это происходит, мне не понятна.

void  Visual_MinimizeTradePanel()
  {
   string obj1 = Gl_Var_VisualID+" TradePanel_Background", 
          obj2 = Gl_Var_VisualID+" TradePanel_Button";

   ResetLastError();
   if(!ObjectDelete(0,obj1))
      Alert(__FUNCTION__,": Error! Couldn't hide the object '"+obj1+"' from the chart! Code: "+(string)GetLastError());

   ResetLastError();
   if(!ObjectDelete(0,obj2))
      Alert(__FUNCTION__,": Error! Couldn't hide the object '"+obj2+"' from the chart! Code: "+(string)GetLastError());

}
 
 
Tom Seljakin:
Можете пожалуйта подсказать в чем проблема? При успешном удалении графического объекта, выходит ошибка 4202. Опять же обьект полностью удаляется из графика, но причина почему это происходит, мне не понятна.

Ошибка: 4202 Объект не существует
Пытается удалить объект которого уже нет
Нужно сначала найти объект и если он существует то удалить

Например так:

void start()
{
   string obj1 = Gl_Var_VisualID+" TradePanel_Background", 
          obj2 = Gl_Var_VisualID+" TradePanel_Button";
   
   if(Если есть условия для удаления объекта 1 с графика) DellObj(obj1);
   if(Если есть условия для удаления объекта 2 с графика) DellObj(obj2);
}
//+-----------------------------------------------------------+ 
//| Поиск объектов по имени и их удаление                     | 
//+-----------------------------------------------------------+ 
void DellObj(string obj){
   string name;
   for(int cnt=ObjectsTotal()-1;cnt>=0;cnt--) {
      name=ObjectName(cnt);
      if(StringFind(name,obj,0)>-1) ObjectDelete(name);        
WindowRedraw();}}
 
FXwin:

Ошибка: 4202 Объект не существует
Пытается удалить объект которого уже нет
Нужно сначала найти объект и если он существует то удалить

Например так:

А где проверка условия существования объекта? 

Нужно сначала найти объект, а уж после его удалять. 

 
Алексей Тарабанов:

А где проверка условия существования объекта? 

При вызове же проверяет))

if(StringFind(name,obj,0)>-1)