Indicateurs: Grille - page 4

 

Je ne comprends pas pourquoi, mais si dans le code de dessin des lignes verticales :

line_counter++ ;

TimeToStruct(time[i],str) ;

StringConcatenate(line_name,IntegerToString(str.hour,2,'0')," :",IntegerToString(str.min,2,'0'),"_N",line_counter) ;

SetVLine(line_name,time[i],line_colour) ;

remplace la dernière ligne par la suivante :

SetVLine(IntegerToString(str.hour,2,'0')+" : "+IntegerToString(str.min,2,'0')+"_N "+IntegerToString(line_counter),time[i],line_color);

tout fonctionne alors comme il se doit.

Lors de l'impression par Print de la variable line_name après la ligne avec StringConcatenate - le nom des lignes est écrit correctement sur le terminal.

Pour une raison quelconque, lorsque l'on substitue cette variable obtenue dans StringConcatenate dans la fonction SetVLine, les lignes ne sont pas tracées, seul le calcul direct du nom de la ligne dans le code de l'appel de la fonction de dessin fonctionne.

Et cela apparaît exactement après le build 3021.

P.S. J'ai démarré la dinde, mais des "cafards" vivent dans le terminal.

 

Merci aux développeurs d'avoir corrigé un bogue dans la fonction StringConcatenate dans la version 3090.

https://www.mql5.com/ru/forum/380121

L'indicateur fonctionne maintenant correctement dans le code original.

Новая версия платформы MetaTrader 5 build 3090: Улучшения в работе
Новая версия платформы MetaTrader 5 build 3090: Улучшения в работе
  • 2021.10.20
  • www.mql5.com
В четверг 21 октября 2021 года будет выпущена обновленная версия платформы MetaTrader 5...