Diskussion zum Artikel "Das MQL5-Kochbuch: Steuerelemente des Indikatorunterfensters - Die Schaltflächen" - Seite 5
Sie verpassen Handelsmöglichkeiten:
- Freie Handelsapplikationen
- Über 8.000 Signale zum Kopieren
- Wirtschaftsnachrichten für die Lage an den Finanzmärkte
Registrierung
Einloggen
Sie stimmen der Website-Richtlinie und den Nutzungsbedingungen zu.
Wenn Sie kein Benutzerkonto haben, registrieren Sie sich
Sind Sie jetzt einverstanden? )
Um ehrlich zu sein, verstehe ich nicht, warum der Indikator nach dem Deaktivieren des Expert Advisors die Mausbewegung nicht mehr verfolgen sollte? Wo ist die Verbindung zwischen dem Indikator und dem Expert Advisor?
Das ist der Punkt, es kann keine Verbindung zwischen ihnen geben, so dass jedes Programm beim Entladen deaktivieren muss, was andere Programme nicht brauchen. In diesem Fall, wenn der Indikator die Verfolgung der Mausbewegung nicht braucht, warum den Fluss der Ereigniswarteschlange blockieren?
Sie dürfen es natürlich nicht tun, es ist nicht notwendig. Aber wenn wir über Optimierung sprechen, halte ich es für notwendig.
Der Punkt ist, dass es möglicherweise keine Verbindung zwischen ihnen gibt, so dass jedes Programm deaktivieren muss, was andere Programme nicht brauchen. In diesem Fall, wenn der Indikator nicht das Mausbewegungsereignis verfolgen muss, warum den Fluss der Ereigniswarteschlange blockieren?
Sie dürfen es natürlich nicht tun, es ist nicht notwendig. Aber wenn wir über Optimierung sprechen, halte ich es für notwendig.
Vasiliy spricht davon, dass das Programm das Tracking nicht gedankenlos aktivieren/deaktivieren sollte, sondern:
D.h. die Deaktivierung sollte nur erfolgen, wenn das Tracking beim Start des Programms deaktiviert war.
Dann funktioniert jede Kombination von Start/Stopp von Programmen mit/ohne Mausereignisverfolgung korrekt.
Der Punkt ist, dass es möglicherweise keine Verbindung zwischen ihnen gibt, so dass jedes Programm deaktivieren muss, was andere Programme nicht brauchen. In diesem Fall, wenn der Indikator nicht das Mausbewegungsereignis verfolgen muss, warum den Fluss der Ereigniswarteschlange blockieren?
Sie dürfen es natürlich nicht tun, es ist nicht notwendig. Aber wenn wir über Optimierung sprechen, halte ich es für notwendig.
Vasily hat ein gutes Argument: Das Programm sollte das Tracking nicht willkürlich aktivieren/deaktivieren, sondern:
Ich habe es also folgendermaßen gemacht.
Das Programm, bei dem die Nachverfolgung beim Start aktiviert ist, deaktiviert sie beim Entladen. Und das Programm, das auf der Karte verbleibt und Tracking benötigt, prüft, ob es aktiviert ist, und wenn es deaktiviert ist, aktiviert es es.
Es ist wünschenswert, Ihre Variante zu den Beispielen des Expert Advisors und des Indikator-Codes aus meinem Beitrag auf der vorherigen Seite zu geben , um Mehrdeutigkeit der Aussagen auszuschließen.
Aha, d.h. in Ihrem Beispiel hat der Expert Advisor entschieden, dass der Indikator das Ereignis EVENT_MOVE_MOUSE nicht mehr benötigt und hat es vor dem Beenden deaktiviert. Auf welcher Grundlage entscheidet der Expert Advisor, was andere Indikatoren brauchen und was nicht? Nimmt er nicht zu viel auf sich?
Der Experte entscheidet für sich selbst. Aber Ihre Variante gefällt mir eigentlich besser. Das heißt, sie ist richtiger. Ich habe nicht darüber geschrieben, wie man es besser machen kann, sondern über die Notwendigkeit davon. Man muss es nicht umdrehen. Punktum.
Der Experte entscheidet selbst. Aber eigentlich gefällt mir Ihre Option besser. Ich habe nicht davon gesprochen, wie man es am besten macht, sondern davon, dass es notwendig ist. Sie müssen es nicht umdrehen. Punktum.
Aha, d.h. in Ihrem Beispiel hat der Expert Advisor entschieden, dass der Indikator das Ereignis EVENT_MOVE_MOUSE nicht mehr benötigt und hat es vor dem Beenden deaktiviert. Auf welcher Grundlage entscheidet der Expert Advisor, was andere Indikatoren brauchen und was nicht? Nimmt er nicht zu viel auf sich?
Man geht wohl davon aus, dass alle anderen Programme nach dem gleichen Prinzip aufgebaut sind und ihn bei Bedarf selbst einschalten.
Aber ist es denn so wichtig, abzuschalten? Dieser Ein/Aus-Schalter gilt nur für eine Karte. Ich denke, es ist keine große Sache, wenn Sie ihn nur einschalten und nicht ausschalten.
Nur wenige Leute würden sich daran stören. Um also Probleme zu vermeiden, schalten Sie ihn nur ein, aber nicht aus. Andererseits wird jemand das Gerät ausschalten. Sie können ihn also mit einer Zeitschaltuhr überwachen und ihn bei Bedarf einschalten, aber nicht ausschalten.
Wenn also niemand dieses Ereignis abschalten wird...
Wenn also niemand dieses Ereignis deaktiviert, ist es nicht notwendig, jede Sekunde zu prüfen, ob es aktiviert ist. In einem Expert Advisor deaktivieren Sie das Ereignis ausdrücklich, in einem anderen überwachen Sie seine Eigenschaft jede Sekunde, während es einfacher und sicherer ist, überhaupt nichts zu schreiben.
Nicht unbedingt jede Sekunde, es gibt eine Alternative bei einem anderen Ereignis (bereits diskutiert). Geben Sie bitte ein besseres Beispiel dafür, wie ich es hier gemacht habe. ) Ausgehend von der Bedingung, dass der Expert Advisor dieses Ereignis braucht, der Indikator aber nicht. So wird es klarer.
P.S. Berichtigung. Ich habe einen Fehler gemacht. )) Ihre Variante ist nicht mehr korrekt. Sie passt überhaupt nicht. Gib also besser ein Beispiel, das auf der obigen Bedingung basiert.