Discussion de l'article "Concevoir et implémenter de nouveaux widgets GUI axés sur la classe CChartObject"

 

Un nouvel article Concevoir et implémenter de nouveaux widgets GUI axés sur la classe CChartObject a été publié :

Après avoir écrit un article précédent sur l'Expert Advisor semi-automatique avec interface graphique, il s'est avéré qu'il serait souhaitable d'améliorer l'interface avec de nouvelles fonctionnalités pour des indicateurs et des Expert Advisors plus complexes. Après m'être familiarisé avec les classes de bibliothèque standard MQL5, j'ai implémenté de nouveaux widgets. Cet article décrit un processus de conception et d’implémentation de nouveaux widgets d'interface graphique MQL5 pouvant être utilisés dans des indicateurs et des Expert Advisors. Les widgets présentés dans l'article sont CChartObjectSpinner, CChartObjectProgressBar et CChartObjectEditTable.

Si nous n'utilisons pas la classe de bibliothèque MQL5 standard, nous devons utiliser les Fonctions d’objet pour créer et gérer tout objet sur le graphique.

Les objets sont créés avec la fonction ObjectCreate() et le type d’objet est transmis vers la fonctionObjectCreate() en tant que valeur ENUM_OBJECT. Tous les objets sur le graphique disposent de leurs propres caractéristiques qui peuvent être de typeInteger, Double, ou String Toutes les propriétés sont définies et récupérées via des fonctions dédiées : ObjectGetInteger(), ObjectSetInteger(), ObjectGetDouble(), ObjectSetDouble(), ObjectGetString(), ObjectSetString(). Il y a également des fonctions poursupprimer, déplacer et compter les objets sur tout graphique donné. 

En raison du paradigme de la POO dans MQL5, la gestion de divers objets graphiques peut être effectuée à l'aide de la classeCChartObject et de ses descendants.

La classeCChartObject est une classe de base pour tous les objets graphiques pouvant être placés sur un graphique. Veuillez observer le diagramme d'héritage de base pour CChartObject ci-dessous :

 

 Diagramme d'héritage pour la classe CChartObject 

Figure 1. Diagramme d'héritage pour la classe CChartObject

Auteur : investeo

Raison: