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

 
Ihor Herasko:

Cette fonction n'existe pas, mais elle peut être réalisée par l'intermédiaire de WinAPI. Cependant, nous devons encore faire face à la logique d'une telle action : quelle est la différence entre un bouton sur le graphique et un bouton sur la barre d'outils ? Pourquoi serait-il plus pratique pour l'utilisateur d'appuyer sur le bouton du graphique que sur celui de la barre d'outils ?

Pour que vous puissiez rapidement et facilement personnaliser le style/couleur/épaisseur et d'autres choses avec d'autres boutons, parce que c'est ennuyeux de passer par les fenêtres standard avec PKM quand vous devez dessiner beaucoup d'objets.

 
vous pouvez surveiller la souris dans l'événement OnChartEvent, si le bouton de votre outil est pressé, puis attraper le premier clic et commencer à dessiner quelque chose.
 
Ihor Herasko:

Je réponds tous les jours, mais vous ne vous lassez pas de répéter ce mantra tous les jours sur tous les fils du forum. Ou devrais-je seulement répondre à vos questions ?

Tout d'abord, j'aimerais que vous répondiez à mes questions, puis que vous vous rendiez sur ce fil : ).

Vous voyez,

1. 2018.08.03 Vous ne me répondez pas à ce que j'ai demandé juste avant.

2. plus loin J'insiste sur ce point, mais vous 2018.08.06th continuez à répondre à la mauvaise chose. j'insiste à nouveau sur ce point.

3. prochain, 2018.08.07 vous répondez à une de mes anciennes lignes. Votre réponse est étrange. Il s'avère que j'ai accroché bashift sur un graphique avec un prix manquant ? je l'ai accroché sur un instrument de courtage normal.

4. à ce moment-là, mes répliques ont accumulé 6 problèmes sous forme d'archives zip, et quelques commentaires supplémentaires. Vous vous obstinez à les ignorer, malgré l'urgence que j'ai soulignée : ).

cpsb

 
Artsem:

Tout d'abord, j'aimerais que vous répondiez à mes questions, puis que vous vous rendiez sur ce fil : ).

Vous voyez,

1. 2018.08.03-vous ne me répondez pas à ce que j'ai demandé juste avant.

2. plus loin J'insiste sur ce point, mais vous 2018.08.06th continuez à répondre à la mauvaise chose. j'insiste à nouveau sur ce point.

3. ensuite, 2018.08.07 vous répondez à une de mes anciennes lignes. Votre réponse est étrange. Il s'avère que j'ai accroché bashift sur un graphique avec un prix manquant ? je l'ai accroché sur un instrument de courtage normal.

4. à ce moment-là, mes répliques ont accumulé 6 problèmes sous forme d'archives zip, et quelques commentaires supplémentaires. Vous vous obstinez à les ignorer, malgré l'urgence que j'ai soulignée : ).

cpsb

Pourquoi pensez-vous que c'est le travail de tout le monde de régler vos problèmes ? Chacun a son truc à faire. Posez vos questions dans les fils de discussion appropriés du forum. Ne posez pas toujours la même question dans des fils différents. Adressez-vous au conseil d'administration. La qualité de votre question au CA est directement proportionnelle à la qualité de la réponse. Ne reprochez pas au CA son silence, mais répondez d'abord à votre question, car elle n'est peut-être compréhensible et urgente que pour vous et pour vous. Formulez correctement vos questions. Ce que vous m'avez écrit en privé - juste un flux de conscience, pas de questions constructives. Ne répondez pas à une telle chose. Et il y a peu de gens à qui je réponds sur des questions stupides.

Si vous voulez une réponse plus rapide, posez-la sur le forum au lieu de bombarder les gens en privé. Chacun a son truc à faire. Vous n'êtes pas leur première priorité - quelle que soit l'urgence de vos demandes.

 
Artyom Trishkin:

1. Pourquoi pensez-vous que tout le monde doit s'occuper de vos problèmes ? Chacun a son truc à faire.

2. Posez vos questions dans les fils appropriés du forum.

3 Ne posez pas toujours la même question dans différents fils de discussion.

4 L'adresser au CA. La qualité de votre question au CA est directement proportionnelle à la qualité de la réponse. Ne reprochez pas au CA son silence - tout d'abord, réfléchissez à votre question, elle n'est peut-être claire et urgente que pour vous et pour vous. Formulez correctement vos questions. Ce que vous m'avez écrit en privé - juste un flux de conscience, pas de questions constructives. Ne répondez pas à une telle chose. Je ne réponds pas à de telles questions et je ne réponds pas à de nombreuses questions stupides.

Si vous voulez une réponse plus rapide, posez-la sur le forum au lieu de bombarder les gens en privé. Chacun a son truc à faire. Vous n'êtes pas la première priorité pour eux - quelle que soit l'urgence de vos demandes.

1. Je ne pense pas.

2. il ne s'agit pas d'une question, mais de bugs dans les indukes des freelances ; je pense qu'un freelance est plus enclin à réparer ses propres indukes en premier lieu qu'à faire un travail de charité dans ce fil de forum : )

3) Que se passe-t-il si un indépendant ne répond qu'une fois par jour pendant une semaine, et à la mauvaise question (urgente !)?

4. Je le fais, mais ils ne veulent pas modifier un détail (mineur !). Ils comprennent ce que je veux qu'ils fassent. S'ils ne le comprenaient pas, ils me le demanderaient à nouveau, comme ils le font parfois.

: )

 
Artsem:

1. ne pas compter

2. ce n'est pas un problème, c'est un bug dans les indulgences du freelance ; à mon avis, un freelance est plus enclin à modifier ses indulgences d'abord que de faire la charité dans ce fil de forum : )

3) Que se passe-t-il si un indépendant ne répond qu'une fois par jour pendant une semaine, et à la mauvaise question (urgente !)?

4. Je le fais, mais ils ne veulent pas modifier un détail (mineur !). Ils comprennent ce que je veux qu'ils fassent. S'ils ne le comprenaient pas, ils me le demanderaient à nouveau, comme ils le font parfois.

: )

Je ne suis pas un freelance, mais vous m'avez envoyé des questions par courrier. Pour quoi faire ?

Les méta-quotas ont leurs propres priorités et ne doivent pas se plier à vos désirs. Ils peuvent ou non être ajoutés à la liste des correctifs, mais cela ne signifie pas que tout le monde va immédiatement bricoler avec vos petites manies.

 
Artyom Trishkin:

1. Je ne suis pas un freelance, mais vous me lancez des questions dans mon courrier électronique. Pour quoi faire ?

2. Les métacitations ont leurs propres tâches principales, et non pas de répondre à vos souhaits. Ils peuvent ou non figurer sur la liste des correctifs, mais cela ne signifie pas que tout le monde va immédiatement bricoler vos petites choses.

J'ai répondu à votre courriel.

 
Ihor Herasko:

Il n'existe pas d'objets que vous créez qui soient invisibles.

Ils peuvent être inaccessibles depuis une fonction ou une autre, mais ils doivent être disponibles dans l'objet lui-même. C'est l'objet où vous devez effacer la mémoire. Cela se fait généralement avec le destructeur de la classe. Pour en être sûr, mettez Prints dans tous les destructeurs et dans OnDeinit.

Comment cela peut-il ne pas arriver ? Par exemple, je crée des objets dans la boucle en utilisant l'opérateur new. Ils ne sont pas visibles dans Deinit(). Je ne peux pas les supprimer dans la boucle puisqu'ils sont utilisés dans la logique. Comment dois-je les supprimer ?

 
Juer:

Comment pourrait-il en être autrement ? Par exemple, je crée des objets dans la boucle en utilisant l'opérateur new. Ils ne sont pas visibles dans Deinit(). Mais je ne peux pas les supprimer dans la boucle car ils sont utilisés dans la logique... Comment les supprimer ?

Lorsque vous les créez, les attachez-vous à la liste ?

Vous connaissez le nom de la liste. Dans OnDeinit(), vous parcourez la liste en boucle, récupérez un objet, vérifiez sa validité et le supprimez. Lorsque la boucle est terminée, la liste entière des objets sera vide. C'est tout.

 
Artyom Trishkin:

Lorsque vous les créez, les attachez-vous à la liste ?

Vous connaissez le nom de la liste. Dans OnDeinit(), vous bouclez la liste, récupérez un objet, vérifiez sa validité et le supprimez. Lorsque la boucle est terminée, la liste entière des objets sera vide. C'est tout.

Très bien. Laissez-moi les supprimer dans OnDeinit(). Mais maintenant, j'ai une erreur de mémoire qui apparaît déjà pendant les tests... C'est-à-dire qu'il n'arrivera pas à OnDeinit().

Raison: