Die Anmeldung bei OnBookEvent fällt manchmal aus - gibt es so etwas? - Seite 12

 
Stanislav Korotky:
Das Wichtigste ist das Ergebnis... dass das Problem eine ausreichende Anzahl von Antworten erhalten hat und von den Entwicklern aufgegriffen wurde
 
Stanislav Korotky:

Sie haben den Streit begonnen, beenden Sie ihn. Ich habe mich für nichts zu entschuldigen. Im Gegensatz zu Ihnen habe ich ein Argument vorgebracht.

Ich habe alle Ihre Beiträge gesehen. Sie haben nur das zitiert, was Ihnen passte, und das, was davor stand, und dann haben Sie es einfach ignoriert, als ob Sie es gar nicht geschrieben hätten. Es ist Ihnen tatsächlich gelungen, das Problem zu reproduzieren. Und überhaupt, kam zu diesem Thread mit Ihrem Problem, das nichts mit dem Thema zu tun hat.

Die Tatsache, dass du weiter schreibst, charakterisiert dich nicht auf die beste Art und Weise, du verdirbst dir nur dein Image, und die Leute

Die Menschen erinnern sich noch lange daran. Das Problem ist jedoch verstanden worden, und ich möchte betonen, dass dies nicht auf Ihre "Veranlassung" hin geschah!

Ich werde Ihnen nicht mehr antworten (es wird langsam lächerlich)

 
Slava:

Ich verstehe das Problem.

Um das Bild zu vervollständigen, füge ich die Prüfcodes für OnChartEvent

//Test1.mq5
#include "Tes2.mq5"
void OnChartEvent( const int id, const long&, const double&, const string& )
{
        if ( id == CHARTEVENT_MOUSE_WHEEL )
                Print( __FUNCTION__ );
}
//Test2.mq5
void ChartEventMouseWheel( bool b )
{
        ResetLastError();
        if ( !ChartSetInteger( 0, CHART_EVENT_MOUSE_WHEEL, b ) )
                Print( __FUNCTION__, ":", GetLastError());
}
void OnInit()              { ChartEventMouseWheel( true  ); }
void OnDeinit( const int ) { ChartEventMouseWheel( false ); }
int OnCalculate( const int, const int, const int, const double& [] ) { return 0; }

Befestigen Sie den ersten Indikator an der Karte... dann 2. Indikator. Nachdem der 2. Indikator aus dem Diagramm entfernt wurde, empfängt der 1. Indikator keine CHARTEVENT_MOUSE_WHEEL-Ereignisse mehr , obwohl er sie vorher korrekt empfangen hat

 
A100:

Befestigen Sie den 1. Indikator am Diagramm... dann die 2. Nachdem der 2. Indikator aus dem Diagramm entfernt wurde, erhält der 1. Indikator keine CHARTEVENT_MOUSE_WHEEL-Ereignisse mehr , obwohl er sie vorher erhalten hat

Warum sollte er sie weiterhin erhalten?

Es ist genau so, wie in der Hilfe beschrieben:

https://www.mql5.com/ru/docs/constants/chartconstants/enum_chartevents

Документация по MQL5: Константы, перечисления и структуры / Константы графиков / Типы событий графика
Документация по MQL5: Константы, перечисления и структуры / Константы графиков / Типы событий графика
  • www.mql5.com
Существуют 11 видов событий, которые можно обрабатывать с помощью функции предопределенной функции OnChartEvent(). Для пользовательских событий предусмотрено 65535 идентификаторов в диапазоне от CHARTEVENT_CUSTOM до CHARTEVENT_CUSTOM_LAST включительно. Для генерации пользовательского события необходимо использовать функцию EventChartCustom...
 
Andrey Barinov:

Warum sollte er sie weiterhin bekommen?

Dies entspricht genau der Beschreibung auf der Bescheinigung:

https://www.mql5.com/ru/docs/constants/chartconstants/enum_chartevents

Dann entspricht OnBookEvent (warum gibt es eine Diskrepanz mit der Beschreibung?) und die Entwickler können gut schlafen.

Es ist nur so, dass OnChartEvent eine detailliertere Beschreibung hat als OnBookEvent

 
A100:
Dann entspricht das OnBookEvent und die Entwickler können beruhigt schlafen.

Zu OnBookEvent kann ich mich nicht äußern, da ich mich mit dem Thema nicht beschäftige. Aber über MouseWheel wird in der Hilfe klar geschrieben, dass es eine Eigenschaft des Diagramms ist, und es betrifft alle Programme, die auf diesem Diagramm laufen.

 
Andrey Barinov:

Zu OnBookEvent kann ich mich nicht äußern, da ich mich nicht mit dem Thema befasse. Aber über MouseWheel in der Hilfe ist klar geschrieben, dass es eine Eigenschaft eines Diagramms ist, und es betrifft alle Programme, die auf diesem Diagramm laufen.

Darüber hinaus hat der Entwickler den Grundsatz formuliert: Der Subskriptionsstatus eines EA sollte andere EAs nicht beeinflussen.

Wenn das Prinzip allgemein ist, sollte es für OnBookEvent und OnChartEvent dasselbe sein

Ich habe hier auch festgestellt, dass die Arbeit von OnChartEvent der Beschreibung entspricht

Подписка на OnBookEvent иногда отваливается - есть такое?
Подписка на OnBookEvent иногда отваливается - есть такое?
  • 2018.07.25
  • www.mql5.com
После того как поплотнее занялся стаканом и повесил на чарты несколько экспертов и индикаторов, подписанных на OnBookEvent, обнаружил, что некоторы...
 
A100:

Darüber hinaus hat der Entwickler den folgenden Grundsatz formuliert: Der Zustand des Abonnements eines EAs sollte sich nicht auf andere EAs auswirken.

Abonnements sind Abonnements, aber die Diagrammeigenschaft ist eine Eigenschaft des Diagramms.

MOUSE_WHEEL ist dasselbe wie die Einstellung der Hintergrundfarbe der Karte. Sie können einen Indikator verwenden und Sie können einen anderen verwenden. In diesem Fall erhalten sie bei ChartGet() alle die aktuelle Farbe.

 
Andrey Barinov:

Abonnements sind Abonnements, aber die Diagrammeigenschaft ist eine Diagrammeigenschaft.

MOUSE_WHEEL ist dasselbe wie die Einstellung der Hintergrundfarbe der Karte. Sie können einen Indikator verwenden und Sie können einen anderen verwenden. Wenn ChartGet() aufgerufen wird, erhalten sie alle gleichzeitig die aktuelle Farbe.

Nicht verwechseln. Wir sprechen von Abonnements, nicht von Immobilien
 
A100:
Lassen Sie sich nicht verwirren. Es ist

über Abonnements, nicht über Eigenschaften

Ich bin nicht verwirrt.

Hier ist dieser Teil Ihres Codes

ChartSetInteger( 0, CHART_EVENT_MOUSE_WHEEL, b )

Dies ist die Eigenschaft des Graphen, nicht die des Abonnements.