Toute question des nouveaux arrivants sur MQL4 et MQL5, aide et discussion sur les algorithmes et les codes. - page 1635

 
SanAlex #:

mais si vous essayez de cette façon - seulement vous devez mettre tous les noms dans

Vous n'avez pas besoin de construire un vaisseau spatial. C'est beaucoup plus simple que ça.

 
Artyom Trishkin #:

Vous n'avez pas besoin de construire un vaisseau spatial. C'est beaucoup plus simple que ça.

non, il y a différentes situations, parfois il peut être préférable de l'enlever de cette façon.

 
SanAlex #:

Non, il y a différentes situations, parfois il peut être préférable de l'enlever de cette façon.

Supprimez-la. Mais il vaut mieux en comprendre la raison une fois - afin de ne plus jamais le faire.

Lorsque vous supprimez un objet d'un tableau, la position du prochain objet se déplace dans le tableau et l'index de la boucle pointe maintenant vers où ? Réfléchissez.

 
Artyom Trishkin #:

Supprimez-la. Mais il est préférable d'en comprendre la raison une fois, afin de ne plus jamais le faire.

Lorsque vous supprimez un objet d'un tableau, la position du prochain objet se déplace dans le tableau et l'index de la boucle pointe maintenant vers où ? Réfléchissez.

Si je comprends bien, il s'agit du tableau "H2 Arrow 8345", et il crée également un objet nommé "button1", "ArrowUp0008", "ArrowDown0008", "ArrowUp0006", "ArrowDown0006".

 
Nerd Trader #:

Je supprime tous les objets dans OnDeInit() par boucle (les flèches indiquant les barres de signalisation et un bouton) :

Je suis conscient de l'existence de ObjectsDeleteAll(), mais si je le fais à travers une boucle, seule la moitié des objets est supprimée en une seule fois. En fait, voici le travail de la boucle et je ne comprends pas pourquoi cela se passe ainsi :

Pourquoi voudriez-vous effacer à travers une boucle ?
 
MakarFX #:
Pourquoi voudriez-vous effacer à travers une boucle ?
Pour le plaisir de faire des bêtises.)))
 
MakarFX #:
Pourquoi avez-vous besoin de supprimer à travers une boucle ?

Eh bien, la commandeObjectsDeleteAll fait essentiellement lamême chose.

et en plus, il y avait des bugs avec lui - il ne supprimait pas complètement un grand nombre d'objets, dans certaines conditions.

 
Taras Slobodyanik #:

Eh bien, la commandeObjectsDeleteAll fait essentiellement lamême chose.

et en plus, il y avait des bugs avec lui à un moment donné - il ne supprimait pas complètement un grand nombre d'objets, dans certaines conditions.

Je n'ai jamais rencontré cela auparavant...
 
Taras Slobodyanik #:

Eh bien, la commandeObjectsDeleteAll fait essentiellement lamême chose.

et en plus, il y avait des bugs avec lui à un moment donné - il ne supprimait pas complètement un grand nombre d'objets, dans certaines conditions.

C'était plutôt le contraire. Dans OnDeInit(), l'Expert Advisor n'a pas eu le temps de supprimer tous les objets par la boucle. Il en a été question ici sur le forum. La solution est sans ambiguïté, supprimez tout par préfixe...
 
Artyom Trishkin #:

Supprimez-la. Mais il est préférable d'en comprendre la raison une fois, afin de ne plus jamais le faire.

Lorsque vous supprimez un objet d'un tableau, la position du prochain objet se déplace dans le tableau et l'index de la boucle pointe maintenant vers où ? Réfléchissez-y.

Vous feriez mieux de préciser tout de suite la raison, à propos du décalage - je l'ai bien lu, je voulais l'écrire).