Errori, bug, domande - pagina 974

 
tol64:

Qualcuno è riuscito a ripetere l'impresa divoix_kas?

//---

O è un errore di battitura? )))

Non è un errore di battitura. In modalità visiva provo sempre l'Expert Advisor con le statistiche del grafico abilitate. È più informativo per me.
 
voix_kas:
Non è un errore di battitura. In modalità visiva provo sempre l'Expert Advisor con le statistiche del grafico attivate. Questo è più informativo per me.
Per test nel tester, intendi la modalità di visualizzazione? Per quanto ne so, al momento oggetti comeOBJ_BITMAP_LABEL non vengono visualizzati nella modalità di visualizzazione, così come alcuni altri oggetti. Quindi è doppiamente interessante vedere come hai fatto.
Документация по MQL5: Стандартные константы, перечисления и структуры / Константы объектов / Типы объектов
Документация по MQL5: Стандартные константы, перечисления и структуры / Константы объектов / Типы объектов
  • www.mql5.com
Стандартные константы, перечисления и структуры / Константы объектов / Типы объектов - Документация по MQL5
 
tol64:
Per test nel tester, intendi la modalità di visualizzazione? Per quanto ne so al momento oggetti comeOBJ_BITMAP_LABEL non vengono visualizzati in modalità di visualizzazione, così come alcuni altri oggetti. Quindi è doppiamente interessante vedere come hai fatto.
Un oggetto di tipoOBJ_BITMAP_LABEL+ResourceCreate in modalità visualizzazione viene disegnato sul grafico. Costruire 794.
 
voix_kas:
Un oggetto di tipoOBJ_BITMAP_LABEL+ResourceCreate è reso sul grafico in modalità visualizzazione. Bild 794.

Mostrami un esempio. Sono un paio di righe di codice. Oppure mostrami, se non ti dispiace, cosa hai visualizzato (screenshot) in modalità di visualizzazione quando usi tale codice:

//+------------------------------------------------------------------+
//|                                                     !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();
  }

//---

Costruire 803:

 

Buona sera!

Dove posso scrivere agli sviluppatori sul loro bug in MetaTrader5?

 
Mikalas:

Buona sera!

Dove posso scrivere agli sviluppatori sul loro bug in MetaTrader5?

Puoi anche scrivere qui. Puoi anche scrivere al Service Desk, c'è un link nel tuo profilo sul lato sinistro della finestra.
 
Mikalas:

Buona sera!

Dove posso scrivere agli sviluppatori sul loro bug in MetaTrader5?

 
tol64:

Mostrami un esempio. Sono un paio di righe di codice. Oppure mostrami, se non ti dispiace, cosa hai visualizzato (screenshot) in modalità di visualizzazione quando usi tale codice:

//---

Costruire 803:

Il codice di cui sopra mi dà lo stesso risultato (non rende la bitmap). Bild 794.

Sfortunatamente, non posso fornire una contro-argomentazione, poiché ho già pulito il mio codice EA dalla bitmap.

 
voix_kas:

Il codice di cui sopra mi dà lo stesso risultato (non rende la bitmap). Costruire 794.

Purtroppo, non posso fornire alcuna controargomentazione, poiché ho già pulito il mio codice EA dalla bitmap.

Le controargomentazioni non hanno importanza, perché questa possibilità non è stata implementata nel tester in nessuna delle build precedenti, compresaquella attuale(803). Quindi non è chiaro come si possa ottenere il risultato nel tester e perché non si possa riprodurlo di nuovo se viene chiesto di farlo. Si prega di riprodurre di nuovo, è molto interessante. Personalmente, ho aspettato due anni per avere finalmente le bitmap nel tester. )))

 
voix_kas:

Forse qualcuno sarebbe interessato a informazioni sulle prestazioni degli oggetti grafici...

...

Cosa posso dire? Una singola Bitmap gira (!) un ordine di grandezza più lento di 26 etichette regolari.

...

Non ho fatto alcun timing speciale, perché è ovvio che la velocità diminuisce di un ordine di grandezza. Sia nel tester che in tempo reale (quando si scorre il grafico c'è un jerking molto evidente).

È un peccato che non sia stata data alcuna prova di questa affermazione.

Per esperienza, il bitmap è più veloce, specialmente se hai bisogno di disegnare grandi tabelle, un esempio di utilizzo del bitmap è il vetro in IShift, o le schede nel pannello integrato ChartWall. Attualmente sto convertendo la mia intera libreria di interfacce in una bitmap, per finire con un pannello di interfaccia come un singolo oggetto bitmap. L'obiettivo è quello di aumentare la velocità e l'affidabilità.

E notate che lo scorrimento del grafico non causa 'hovering/jerking' e lo stack in IShift è aggiornato più spesso di quanto i tick arrivino (cioè il mercato dei forti).