Fehler, Irrtümer, Fragen - Seite 2976
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
Von welchem Nachteil sprechen Sie?
Ich habe nicht im Detail untersucht, warum Kanvas langsam sein könnte, aber ich denke, es ist aus dem gleichen Grund... Die Pixel im Array können nicht selektiv geändert und mit einem Redraw-Befehl versehen werden. Sie nehmen zuerst Änderungen an dem Array vor und müssen dann ResourceCreate durchführen. Die Pixel werden einzeln kopiert und dann in ähnlicher Weise einzeln in einem Diagramm dargestellt und das Diagramm (ChartRedraw) erneut aktualisiert. Wie viele unnötige Operationen... Dadurch wird der Prozessor auf jeden Fall entlastet, wenn er mit der Verarbeitung nützlicher Daten beschäftigt ist. Während Etiketten zumindest weniger Pixel benötigen (und daher schneller ausgegeben werden). Der Ausgabemechanismus befindet sich dann vollständig innerhalb des Diagramms (es muss kein Array übergeben werden). Ich bin mir zwar nichtganz sicher, was ihren Algorithmus angeht, aber ich glaube, sie sind schneller. Ich habe ein Textausgabefeld auf der Grundlage einer Leinwand erstellt. Als ich den Expert Advisor mit einem solchen Panel im Tester visuell testete, war ich von dem Ergebnis nicht sehr beeindruckt. Neben der Belastung durch den EA selbst war auch das Neuzeichnen des Panels ziemlich lästig. Das Panel wird ständig aktualisiert(ResourceCreate -ChartRedraw) und zwar bei jedem Tick. Bei den Etiketten habe ich solche Verlangsamungen nicht bemerkt.
Entweder bin ich ein Idiot oder die Skier bewegen sich nicht? mt4 build 1320
Ich habe noch nicht im Detail herausgefunden, warum Kanvas langsam sein könnte, aber ich denke, es ist derselbe Grund... Die Pixel im Array können nicht selektiv geändert und mit einem Redraw-Befehl versehen werden. Sie nehmen zuerst Änderungen an dem Array vor und müssen dann ResourceCreate durchführen. Die Pixel werden einzeln kopiert und dann in ähnlicher Weise einzeln in einem Diagramm dargestellt und das Diagramm (ChartRedraw) erneut aktualisiert. Wie viele unnötige Operationen... Dadurch wird der Prozessor auf jeden Fall entlastet, wenn er mit der Verarbeitung nützlicher Daten beschäftigt ist. Während Etiketten zumindest weniger Pixel benötigen (und daher schneller ausgegeben werden). Der Ausgabemechanismus befindet sich dann vollständig innerhalb des Diagramms (es muss kein Array übergeben werden). Ich bin mir zwar nichtganz sicher, was ihren Algorithmus angeht, aber ich glaube, sie sind schneller. Ich habe ein Textausgabefeld auf der Grundlage einer Leinwand erstellt. Als ich den Expert Advisor mit einem solchen Panel im Tester visuell testete, war ich von dem Ergebnis nicht sehr beeindruckt. Neben der Belastung durch den EA selbst war auch das Neuzeichnen des Panels ziemlich lästig. Das Panel wird ständig aktualisiert(ResourceCreate -ChartRedraw) und zwar bei jedem Tick. Gleichzeitig habe ich noch nie eine solche Verlangsamung bei Etiketten festgestellt.
Ich habe noch nicht im Detail herausgefunden, warum Kanvas langsam sein könnte, aber ich denke, es ist derselbe Grund... Die Pixel im Array können nicht selektiv geändert und mit einem Redraw-Befehl versehen werden. Sie nehmen zuerst Änderungen an dem Array vor und müssen dann ResourceCreate durchführen. Die Pixel werden einzeln kopiert und dann in ähnlicher Weise einzeln in einem Diagramm dargestellt und das Diagramm (ChartRedraw) erneut aktualisiert. Wie viele unnötige Operationen... Dadurch wird der Prozessor auf jeden Fall entlastet, wenn er mit der Verarbeitung nützlicher Daten beschäftigt ist. Während Etiketten zumindest weniger Pixel benötigen (und daher schneller ausgegeben werden). Und dann ist ihr Ausgabemechanismus vollständig innerhalb des Diagramms (keine Notwendigkeit, ein Array zu übergeben). Ich bin mir zwar nicht ganz sicher, was ihren Algorithmus angeht, aber ich glaube, sie sind schneller. Ich habe ein Textausgabefeld auf der Grundlage einer Leinwand erstellt. Als ich den EA mit einem solchen Panel im Tester visuell testete, war ich von dem Ergebnis nicht sehr beeindruckt. Neben der Belastung durch den EA selbst war auch das Neuzeichnen des Panels ziemlich lästig. Es gibt eine konstante Aktualisierung ( ResourceCreate - ChartRedraw ) bei jedem Tick. Bei den Etiketten habe ich keine solche Verlangsamung festgestellt.
@Ilyas
Compiler-Fehler? Build 2817.
Es scheint nur für Sie.
Woher wissen Sie, dass die Etiketten auf Canva basieren, wenn Canva selbst ein Add-on von OBJ_BITMAP_LABEL und das Etikett OBJ_LABEL ist?
Während ich hier im Forum geplaudert habe, habe ich bereits das Ausgabepanel auf Etiketten skizziert, mit einer beliebigen Anzahl von Zeilen und Spalten. Und für die Leinwand habe ich andere Aufgaben, in meinen anderen Anwendungen. Und es funktioniert auch dort sehr gut.
Bitte sprechen Sie nicht über Dinge, die Sie nicht kennen. @Nikolai Semko hat absolut recht, und Canvas funktioniert schnell und ohne Probleme oder Fehler.
Sie wissen also wahrscheinlich alles? Dann teilen Sie vielleicht Ihr Wissen oder Links, wo Sie über Charting in MetaTrader lesen können, damit ich weiß, was Sie auch wissen? :)
@Ilyas
Compiler-Fehler? Build 2817.
In MQL ist const überhaupt nicht const. Tatsächlichkann const nur durch ein Makrogeschrieben werden
In MQL ist const überhaupt nicht const. Tatsächlich kann const nur durch ein Makro geschrieben werden
Ja, es ist also ein Fehler :-D
Beachten Sie, dass dies nicht nur in einem Fall, sondern in allen (1) (2) (3) (4) so vorgesehen ist: bei (*) gibt es einen Fehler, aber bei (**) ist es OK. D.h. die Konstanten fehlen als Einheit
Beachten Sie, dass dies nicht nur in einem Fall, sondern in allen (1) (2) (3) (4) so vorgesehen ist: bei (*) gibt es einen Fehler, aber bei (**) ist es OK. D.h. die Konstanten fehlen als Einheit