Fehler, Irrtümer, Fragen - Seite 974

 
tol64:

Ist es jemandem gelungen, das Kunststück vonvoix_kas zu wiederholen?

//---

Oder ist das ein Tippfehler? )))

Kein Tippfehler. Im visuellen Modus teste ich den Expert Advisor immer mit aktivierter Chartstatistik. Für mich ist es informativer.
 
voix_kas:
Kein Tippfehler. Im visuellen Modus teste ich den Expert Advisor immer mit eingeschalteter Chartstatistik. Das ist für mich informativer.
Meinen Sie mit Testen im Tester den Visualisierungsmodus? Soweit ich weiß, werden derzeit Objekte wieOBJ_BITMAP_LABEL im Visualisierungsmodus nicht angezeigt, ebenso wie einige andere Objekte. Daher ist es doppelt interessant zu sehen, wie Sie es gemacht haben.
Документация по MQL5: Стандартные константы, перечисления и структуры / Константы объектов / Типы объектов
Документация по MQL5: Стандартные константы, перечисления и структуры / Константы объектов / Типы объектов
  • www.mql5.com
Стандартные константы, перечисления и структуры / Константы объектов / Типы объектов - Документация по MQL5
 
tol64:
Meinen Sie mit Test im Tester den Visualisierungsmodus? Soweit ich weiß, werden derzeit Objekte wieOBJ_BITMAP_LABEL im Visualisierungsmodus nicht angezeigt, ebenso wie einige andere Objekte. Daher ist es doppelt interessant zu sehen, wie Sie es gemacht haben.
Ein Objekt vom TypOBJ_BITMAP_LABEL+ResourceCreate im Visualisierungsmodus wird auf dem Diagramm gezeichnet. Build 794.
 
voix_kas:
Ein Objekt vom TypOBJ_BITMAP_LABEL+ResourceCreate wird im Visualisierungsmodus auf dem Diagramm dargestellt. Bild 794.

Zeigen Sie mir ein Beispiel. Oder zeigen Sie mir, wenn es Ihnen nichts ausmacht, was Sie im Visualisierungsmodus bei Verwendung dieses Codes angezeigt haben (Screenshot):

//+------------------------------------------------------------------+
//|                                                     !expTEST.mq5 |
//|                        Copyright 2013, MetaQuotes Software Corp. |
//|                                              http://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2013, MetaQuotes Software Corp."
#property link      "http://www.mql5.com"
#property version   "1.00"
//--- Подключим класс для работы с канвой
#include <Canvas\Canvas.mqh>
//--- Загрузка класса
CCanvas canvas;
//--- Свойства канвы
string            font_name       ="Calibri";                   // Шрифт
color             canvas_bg_color =C'20,20,20';                 // Цвет фона канвы
string            canvas_name     ="canvas";                    // Название канвы
ENUM_COLOR_FORMAT clr_format      =COLOR_FORMAT_ARGB_NORMALIZE; // Компонент альфа-канала игнорируется
//+------------------------------------------------------------------+
//| ИНИЦИАЛИЗАЦИЯ                                                    |
//+------------------------------------------------------------------+
int OnInit()
  {
//--- Установим высоту текста
   canvas.FontSet(font_name,15,FW_NORMAL);  
   SetCanvas();
   return(0);
  }
//+------------------------------------------------------------------+
//| ДЕИНИЦИАЛИЗАЦИЯ                                                  |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
  {
   canvas.Destroy();
  }
//+------------------------------------------------------------------+
//| СОБЫТИЕ ТИК ТЕКУЩЕГО СИМВОЛА                                     |
//+------------------------------------------------------------------+
void OnTick()
  {
  }
//+------------------------------------------------------------------+
//| Установить канву                                                 |
//+------------------------------------------------------------------+
void SetCanvas()
  {
   if(ObjectFind(0,canvas_name)<0)
     canvas.CreateBitmapLabel(0,0,canvas_name,0,10,200,200,clr_format);
//---
   ShowInfo();
  }
//+------------------------------------------------------------------+
//| Отображает список                                                |
//+------------------------------------------------------------------+
void ShowInfo()
  {
   canvas.Erase(canvas_bg_color);
//---
   for(int i=10; i<100; i+=15)
     {
      //--- Название показателя
      canvas.TextOut(50,i,"Text"+IntegerToString(i)+" :",ColorToARGB(clrWhite),TA_LEFT|TA_TOP);
     }
//---
   canvas.Update();
  }

//---

Build 803:

 

Guten Abend!

Wo schreibe ich den Entwicklern über ihren Fehler in MetaTrader5?

 
Mikalas:

Guten Abend!

Wo schreibe ich den Entwicklern über ihren Fehler in MetaTrader5?

Sie können auch hier schreiben. Sie können sich auch an den Service Desk wenden. In Ihrem Profil auf der linken Seite des Fensters finden Sie einen entsprechenden Link.
 
Mikalas:

Guten Abend!

Wo schreibe ich den Entwicklern über ihren Fehler in MetaTrader5?

 
tol64:

Zeigen Sie mir ein Beispiel. Oder zeigen Sie mir, wenn es Ihnen nichts ausmacht, was Sie im Visualisierungsmodus bei Verwendung dieses Codes angezeigt haben (Screenshot):

//---

Build 803:

Mit dem obigen Code erhalte ich das gleiche Ergebnis (die Bitmap wird nicht gerendert). Bild 794.

Leider kann ich kein Gegenargument liefern, da ich meinen EA-Code bereits aus der Bitmap entfernt habe.

 
voix_kas:

Mit dem obigen Code erhalte ich das gleiche Ergebnis (die Bitmap wird nicht gerendert). Build 794.

Leider kann ich keine Gegenargumente liefern, da ich meinen EA-Code bereits aus der Bitmap entfernt habe.

Die Gegenargumente spielen keine Rolle, denn diese Möglichkeit wurde in keinem der bisherigen Builds, auch nicht im aktuellen(803), in den Tester implementiert. Es ist daher nicht klar, wie Sie das Ergebnis im Prüfgerät erhalten konnten und warum Sie es nicht erneut reproduzieren können, wenn Sie dazu aufgefordert werden. Bitte wiederholen Sie dies noch einmal, es ist sehr interessant. Ich persönlich habe zwei Jahre lang darauf gewartet, dass die Bitmaps im Tester endlich fertig werden. )))

 
voix_kas:

Vielleicht ist jemand an Informationen über die Leistung von grafischen Objekten interessiert...

...

Was soll ich sagen? Ein einzelnes Bitmap läuft (!) um eine Größenordnung langsamer als 26 normale Etiketten.

...

Ich habe keine besondere Zeitmessung vorgenommen, denn es ist offensichtlich, dass die Geschwindigkeit um eine Größenordnung abnimmt. Sowohl im Testprogramm als auch in Echtzeit (beim Scrollen des Diagramms ist ein deutliches Ruckeln zu erkennen).

Es ist schade, dass kein Beweis für diese Aussage erbracht wurde.

Erfahrungsgemäß ist Bitmap schneller, vor allem wenn Sie große Tabellen zeichnen müssen. Ein Beispiel für die Verwendung von Bitmap ist das Glas in IShift oder die Registerkarten im integrierten ChartWall-Panel. Ich bin gerade dabei, meine gesamte Schnittstellenbibliothek in eine Bitmap zu konvertieren, um am Ende ein Schnittstellenpanel als einzelnes Bitmap-Objekt zu haben. Ziel ist es, die Geschwindigkeit und Zuverlässigkeit zu erhöhen.

Und beachten Sie, dass das Scrollen des Diagramms kein "Hovering/Jerking" verursacht und der Stack in IShift häufiger aktualisiert wird, als die Ticks eintreffen (d.h. der Forts-Markt).