Questions d'un "mannequin - page 31

 
Interesting:
Non épinglé, il dessinera en mode normal si les valeurs sont correctes. En mode rendu, il y aura probablement des problèmes avec les graphiques BMP (je suis sûr à 90%).
Ce week-end, je me suis amusé avec des objets. Si tout n'est pas spécifié de manière explicite et sans ambiguïté, commence à trébucher - pas d'objets, et pas d'erreurs.
 
Silent:

Initialisation - à l'intérieur de la fonction, valeurs - à partir du global ? Hmm.

Extrait de l'aide, à titre de comparaison

Vous prenez au pied de la lettre ce qui est écrit dans l'aide. )) Initialisation dans la fonction pour les variables locales. Moi, par contre, je les ai initialisés globalement.
Документация по MQL5: Основы языка / Переменные / Локальные переменные
Документация по MQL5: Основы языка / Переменные / Локальные переменные
  • www.mql5.com
Основы языка / Переменные / Локальные переменные - Документация по MQL5
 
Silent:
J'ai bricolé des objets pendant le week-end. Si vous ne spécifiez pas tout de manière explicite et sans ambiguïté, il commence à se bloquer - pas d'objets et pas d'erreurs.
Avez-vous réussi à afficher des objets BMP en mode visualisation dans le testeur ou pas, je ne comprends toujours pas ? Il n'y a aucun problème en dehors du testeur.
 
tol64:
Vous prenez ce qui est écrit dans l'aide très littéralement. )) Initialisation dans la fonction pour les variables locales. Je les ai initialisés globalement.

C'est-à-dire que les valeurs globales sont utilisées lorsque les noms correspondent ? Est-ce exact ?

PS ajoute une redirection à la fin.

 
tol64:
Dans le mode de visualisation du testeur, avez-vous réussi à afficher les objets BMP sur le graphique ou pas, je ne comprends toujours pas ? Il n'y a aucun problème en dehors du testeur.
Réponse ci-dessus - je n'ai pas essayé, je ne suis pas encore prêt à le faire. Je viens de voir quelque chose dans le code avec lequel je n'ai même pas dessiné d'objets, quel bpm.
 
Silent:

C'est-à-dire que les valeurs globales sont utilisées lorsque les noms correspondent ? Est-ce exact ?

PS : ajoutez une redirection à la fin.

ChartRedraw(); placé aux bons endroits dans les fonctions OnInit(), OnChartEvent() et OnTick(). Je n'ai aucune coïncidence avec les noms.))
 
Silent:
Ce week-end, je me suis contenté de bricoler des objets. Si tout n'est pas spécifié de manière explicite et sans ambiguïté, il commence à caler - pas d'objets, et pas d'erreurs.
La question initiale ne portait pas sur la possibilité d'afficher des objets graphiques, mais sur le fait que cela se produit en mode normal, mais pas en mode visualisation.
Silencieux:

Initialisation - à l'intérieur de la fonction, valeurs - à partir du global ? Hmm.

De l'aide, à titre de comparaison

Si vous considérez une fonction séparément, c'est juste une fonction. Qui, par exemple, peut être rangé dans une bibliothèque et travaillé depuis n'importe quel endroit.

Mais l'exemple de l'aide montre le rendu d'un objet par un script.

PS

Quant à la fonction elle-même, je pense qu'il lui manque la vérification de l'exactitude des paramètres (bien sûr, c'est l'opinion personnelle du développeur).

De plus, je ferais en sorte que le type soit bool, et non void (avec une gestion des erreurs de création d'objet).

 
Interesting:

Quant à la fonction elle-même, il lui manque, à mon avis, la vérification de l'exactitude des paramètres (en principe, c'est bien sûr l'affaire du développeur).

C'est un bon point. Je suis juste encore en train d'étudier mql4/mql5 et j'améliorerai le code au fur et à mesure que je m'enfoncerai dans cet environnement)). Ou jusqu'à ce qu'un râteau me frappe)).
 
tol64:
ChartRedraw(); placé aux bons endroits dans les fonctions OnInit(), OnChartEvent() et OnTick(). Je n'ai pas de correspondance de nom).

Aucune valeur n'est donc attribuée non plus.

void Create_BMP_Label(long   chart_id,  // id графика
                      string bmp_nm,    // имя объекта
                      string bmp_path,  // путь к обекту
                      long   anchor,    // точка привязки инициализировали
                      long   corner,    // угол привязки
                      int    x_dist,    // координата по шкале X
                      int    y_dist)    // координата по шкале Y
  {
   ObjectCreate(chart_id,bmp_nm,OBJ_BITMAP_LABEL,0,0,0);          // создание объекта
   ObjectSetString(chart_id,bmp_nm,OBJPROP_BMPFILE,0,bmp_path);   // BMP файл
   ObjectSetInteger(chart_id,bmp_nm,OBJPROP_ANCHOR,anchor);       // установка точки привязки использовали, а где взяли значение?
   ObjectSetInteger(chart_id,bmp_nm,OBJPROP_CORNER,corner);       // установка угола привязки
   ObjectSetInteger(chart_id,bmp_nm,OBJPROP_XDISTANCE,x_dist);    // установка координаты X
   ObjectSetInteger(chart_id,bmp_nm,OBJPROP_YDISTANCE,y_dist);    // установка координаты Y
   ObjectSetInteger(chart_id,bmp_nm,OBJPROP_SELECTABLE,false);    // нельзя выделить объект, если FALSE
   ObjectSetString(chart_id,bmp_nm,OBJPROP_TOOLTIP,"\n");         // нет всплывающей подсказки, если "\n"
  }
 
Silent:

Aucune valeur n'est donc attribuée non plus. Où avez-vous trouvé cette valeur ?

Je passe ces propriétés d'objet explicitement (ANCHOR_RIGHT_UPPER, CORNER_RIGHT_UPPER) :
Create_BMP_Label(0,TI_bmp_nm,TI_bmp_pth,ANCHOR_RIGHT_UPPER,CORNER_RIGHT_UPPER,x,y);
Документация по MQL5: Стандартные константы, перечисления и структуры / Константы объектов / Свойства объектов
Документация по MQL5: Стандартные константы, перечисления и структуры / Константы объектов / Свойства объектов
  • www.mql5.com
Стандартные константы, перечисления и структуры / Константы объектов / Свойства объектов - Документация по MQL5