ObjectDelete

A função remove o objeto com nome específico a partir de um gráfico especificado.

bool  ObjectDelete(
   long    chart_id,     // identificador gráfico
   string  name          // nome objeto
   );

Parâmetros

chart_id

[in]  Identificador do gráfico. Significa o gráfico atual.

nome

[in]  Nome do objeto para ser deletado.

Valor do Retorno

Retorna true, se a colocação do comando na fila do gráfico especificado for bem-sucedida, caso contrário, false.

Observação

Ao chamar ObjectDelete(), sempre é usada uma chamada assíncrona, portanto a função retorna apenas o resultado da colocação do comando na fila do gráfico. Neste caso, true indica apenas que o comando está na fila com sucesso; e em si o resultado de sua execução não é conhecido.

Para verificação do resultado da execução, é possível utilizar a função ObjectFind() ou quaisquer funções que solicitam as propriedades do objeto, por exemplo, do tipo ObjectGetXXX. Mas, ao fazer isto, deve-se ter em mente que estas funções são colocadas na fila de espera dos comandos do gráfico e são esperados os resultados da execução (uma vez que são chamadas síncronas), isso quer dizer que não podem consumir muito tempo. Deve ter isso em mente, se você estiver trabalhando com um grande número de objetos no gráfico.

Quando um objeto é renomeado, dois eventos são formados simultaneamente. Estes eventos podem ser manipulados em um Expert Advisor ou o indicador pela função OnChartEvent():

  • um evento de exclusão de um objeto com o nome antigo;
  • um evento de criação de um objeto com um novo nome.