Je fais un retracement (avec une pause de 5000) de tous les graphiques :
a) (hier) jour de repos - pas de réaction - lors du déchargement, le script passe au premier graphique, même si le script n'a pas été lancé à partir de celui-ci.
b) maintenant - tout fonctionne correctement
Si nécessaire - je joindrai le code - une simple boucle - GetLastError - aucune erreur
ChartGetInteger( chart_ID, CHART_BRING_TO_TOP, 0, true ) - последний параметр должен быть long&, а не boolChartGetInteger( chart_ID, CHART_BRING_TO_TOP, true ) - последний параметр должен быть номер подокна, а не bool
On dirait qu'il y a confusion avec ChartSetInteger ?
Si mon erreur est confirmée et que les modifications seront apportées - je demande également d'envisager de faire en sorte que CHART_BRING_TO_TOP ne soit pas seulement en écriture, mais aussi en lecture comme vous l'avez écrit à travers ChartGetInteger.
longChartID()
ne peut pas aider dans ce cas, puisque ce dernier ne renvoie pas à proprement parler la sélection courante, mais celle à partir de laquelle le script est exécuté. Et au cours du processus d'exécution du script, l'utilisateur peut modifier l'actuel.
Seulement des tas et des tas de .mqh et un exécutable .mq5, rien d'autre.
Permettez-moi d'ajouter. L'avantage de l'approche absolue et modulaire par rapport à l'approche relative est que dans le cas de
Print( __FUNCTION__, __FILE__ )
S'il n'y a qu'un seul module .ex5, on ne sait pas lequel chercher parmi les nombreux modules .mqh, ce qui fait une grande différence étant donné la taille importante du code.
Veuillez également demander aux développeurs :
Est-il possible d'introduire une macrosubstitution prédéfinie supplémentaire __MODULE__ analogue à __FILE__ - mais sans l'extension .mq5?
Ceci est nécessaire pour compiler une expression de la forme suivante : __MODULE__::f()
Cette fonction est souvent utilisée pendant le développement pour changer les noms de fichiers et transférer des fonctions d'un module à l'autre.
A100: J'ajouterai. L'avantage de l'approche modulaire absolue, par rapport à l'approche relative, est que lorsqu'elle émerge de
il n'est pas clair dans quel module chercher la fonction, et s'il n'y a qu'un seul .ex5, il n'est pas clair dans quel .mqh, ce qui fait une grande différence lorsque le code est volumineux.
2013.07.22 14:40:17 PrintTest (EURUSD,M1) Fichier : h2.mqh Fonction : GetH2 2013.07.22 14:40:17 PrintTest (EURUSD,M1) Fichier : h1.mqh Fonction : GetH1 2013.07.22 14:40:17 PrintTest (EURUSD,M1) Fichier : PrintTest.mq5 Fonction : OnStart
---
Veuillez tirer une conclusion pour vous-même : "Avant de développer des définitions imbriquées grandioses, il est bon de comprendre comment le préprocesseur fonctionne réellement".
Veuillez conclure : "Avant de concevoir des définitions grandioses et multi-imbriquées, il est bon de comprendre comment le préprocesseur fonctionne réellement.
Consacrez-y du temps et des efforts. Vous devez en savoir plus sur le chantier et les propriétés des matériaux pour construire des structures solides et confortables.
Votre esprit est très sophistiqué et réfléchi, mais en lui faisant ingurgiter vos propres conclusions hâtives, vous êtes condamné à prendre souvent de mauvaises décisions.
Votre esprit est très sophistiqué et réfléchi, mais en le nourrissant de vos propres conclusions hâtives, vous êtes condamné à prendre souvent de mauvaises décisions.
Il est dommage qu'il n'y ait presque aucun fil de discussion sur ce forum consacré à la structuration judicieuse des programmes. Une structure harmonieuse est la clé du développement sans problème de grands systèmes.
Comment encourager les gens à discuter de telles choses ?
Oui, merci - j'étais pressé - je n'ai pas étudié la question à fond - j'ai confondu avec WindowExpertName() dans MQL4 - il donnait toujours le nom du module compilé - c'est le stéréotype que j'ai obtenu.
Si vous n'avez pas de compte, veuillez vous inscrire
Autorisez l'utilisation de cookies pour vous connecter au site Web MQL5.com.
Veuillez activer les paramètres nécessaires dans votre navigateur, sinon vous ne pourrez pas vous connecter.
Vous êtes connecté. L'authentification à deux facteurs a été désactivée. Configurez-la à nouveau et scannez un nouveau code QR, ou continuez avec l'authentification à deux facteurs désactivée.
Etes-vous sûr des paramètres ?
Les deux exemples sont faux :
On dirait qu'il y a confusion avec ChartSetInteger ?
Je fais un retracement (avec une pause de 5000) de tous les graphiques :
a) (hier) jour de repos - pas de réaction - lors du déchargement, le script passe au premier graphique, même si le script n'a pas été lancé à partir de celui-ci.
b) maintenant - tout fonctionne correctement
Si nécessaire - je joindrai le code - une simple boucle - GetLastError - aucune erreur
Je ne sais pas si c'est important, mais...
maintenant (au moment du trading) fonctionnent de la même manière - le graphique est placé au-dessus des autresForum sur le trading, les systèmes de trading automatisé et les tests de stratégies de trading
Bugs, bugs, questions
Renat, 2013.07.22 09:22
Etes-vous sûr des paramètres ?
Les deux exemples sont faux :
On dirait qu'il y a confusion avec ChartSetInteger ?
Seulement des tas et des tas de .mqh et un exécutable .mq5, rien d'autre.
S'il n'y a qu'un seul module .ex5, on ne sait pas lequel chercher parmi les nombreux modules .mqh, ce qui fait une grande différence étant donné la taille importante du code.
Veuillez également demander aux développeurs :
Est-il possible d'introduire une macrosubstitution prédéfinie supplémentaire __MODULE__ analogue à __FILE__ - mais sans l'extension .mq5?
Ceci est nécessaire pour compiler une expression de la forme suivante : __MODULE__::f()
Cette fonction est souvent utilisée pendant le développement pour changer les noms de fichiers et transférer des fonctions d'un module à l'autre.
J'ajouterai. L'avantage de l'approche modulaire absolue, par rapport à l'approche relative, est que lorsqu'elle émerge de
il n'est pas clair dans quel module chercher la fonction, et s'il n'y a qu'un seul .ex5, il n'est pas clair dans quel .mqh, ce qui fait une grande différence lorsque le code est volumineux.
Tu délires, mon frère.
h1.mqh :
h2.mqh :
PrintTest, mq5 :
Résultat :
2013.07.22 14:40:17 PrintTest (EURUSD,M1) Fichier : h2.mqh Fonction : GetH2
2013.07.22 14:40:17 PrintTest (EURUSD,M1) Fichier : h1.mqh Fonction : GetH1
2013.07.22 14:40:17 PrintTest (EURUSD,M1) Fichier : PrintTest.mq5 Fonction : OnStart
---
Veuillez tirer une conclusion pour vous-même : "Avant de développer des définitions imbriquées grandioses, il est bon de comprendre comment le préprocesseur fonctionne réellement".
Bonne chance à vous !
Veuillez conclure : "Avant de concevoir des définitions grandioses et multi-imbriquées, il est bon de comprendre comment le préprocesseur fonctionne réellement.
Consacrez-y du temps et des efforts. Vous devez en savoir plus sur le chantier et les propriétés des matériaux pour construire des structures solides et confortables.
Votre esprit est très sophistiqué et réfléchi, mais en lui faisant ingurgiter vos propres conclusions hâtives, vous êtes condamné à prendre souvent de mauvaises décisions.
Votre esprit est très sophistiqué et réfléchi, mais en le nourrissant de vos propres conclusions hâtives, vous êtes condamné à prendre souvent de mauvaises décisions.
Puis-je me joindre à votre Padawan ? :)
Y a-t-il de l'argent ? :))
--
Mais ne plaisantons pas :
Il est dommage qu'il n'y ait presque aucun fil de discussion sur ce forum consacré à la structuration judicieuse des programmes. Une structure harmonieuse est la clé du développement sans problème de grands systèmes.
Comment encourager les gens à discuter de telles choses ?
Le résultat :