Errori, bug, domande - pagina 972

 
voix_kas:

Cosa è più facile/veloce per MT5 da elaborare e visualizzare: 24*OBJ_LABELo 1*OBJ_BITMAP_LABEL?

Si presume che24*TextOut sarà anche inserito inOBJ_BITMAP_LABEL.

Cioè, in termini di prestazioni.

Forse qualcuno sarà interessato alle informazioni sulle prestazioni degli oggetti grafici...

È stato fissato il seguente obiettivo. Per aumentare le prestazioni sostituendo26*OBJ_LABELcon 1*OBJ_BITMAP_LABEL.

Questi oggetti grafici mostrano lo stato attuale dell'Expert Advisor. Un totale di 26 etichette sono utilizzate, 13 delle quali sono costantemente aggiornate con valori ricalcolati. Cioè, i primi 13 sono descrizioni di parametri, gli altri 13 sono i loro valori corrispondenti.

Principi generali del lavoro con le etichette. Tutte le 26 etichette sono create e allineate in OnInit(). In OnTick() solo 13 di loro vengono aggiornati (testo).

Principi generali per lavorare con i bitmap. Il modello di tela viene creato inOnInit(). Dovrebbe avere tutti i 13 elementi della descrizione. OnTick() copia il modello del canvas (array di uint) nell'array del canvas di lavoro + aggiunge le rimanenti 13 etichette di valore.

Cosa posso dire? Una Bitmap funziona (!) un ordine di grandezza più lento di 26 etichette convenzionali. Ho cercato di escludere da OnTick() l'operazione di copia del modello nella tela di lavoro (array uint 250*410), cioè lavorare su una sola tela. Il guadagno si sente solo in tempo reale. Nel tester è lo stesso, con una degradazione assoluta della produttività. È stata usata la modalitàCOLOR_FORMAT_ARGB_NORMALIZE, poiché le altre danno un aspetto meno estetico. Guardando avanti, va detto che lavorare su una tela è difficile, perché bisogna tenere traccia della sovrapposizione delle sovrapposizioni precedenti (aree chiare).

Qual è la conclusione per me.

Se l'utente ha bisogno di visualizzare statistiche in tempo reale - sicuramenteOBJ_LABEL. Ha duesvantaggi rispetto aOBJ_BITMAP_LABEL: 1) la mancanza di possibilità di cambiare lo stile del carattere, 2) dal punto di vista del programmatore controllare un elemento (bitmap) è più facile che 26 etichette.

 

Potete dirmi come spostare un oggetto creato da un esperto, cioè farlo sembrare come se fosse stato creato normalmente?

Provato

      result&=obj.SetInteger(OBJPROP_HIDDEN,true);
      result&=obj.SetInteger(OBJPROP_SELECTED,false);
      result&=obj.SetInteger(OBJPROP_SELECTABLE,true);
      result&=obj.SetInteger(OBJPROP_ZORDER,100);

In diverse varianti.

Chi si è imbattuto nell'aiuto.

 
vdv2001:

Potete dirmi come spostare un oggetto creato da un esperto, cioè farlo sembrare come se fosse stato creato normalmente?

Provato

In diverse varianti.

Chi si è imbattuto nell'aiuto.

La proprietà OBJPROP_SELECTABLE è responsabile della capacità di selezionare l'oggetto.
 
tol64:
La proprietà OBJPROP_SELECTABLE è responsabile della possibilità di selezionare l'oggetto.

Sì, l'oggetto è selezionato, ma non può essere spostato con il mouse (come nel terminale 4).

Oppure ora lo spostamento di tutti gli oggetti creati da Expert Advisor deve essere gestito tramite eventi.

 
voix_kas:

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


Rispetto e rispetto!

 

Signori, potreste dirmi cosa causa lo sfarfallio dell'indicatore (la trama DRAW_ZIGZAG lampeggiaa intermittenza ) e come si può risolvere il problema?

 
vdv2001:

Sì, l'oggetto è selezionato, ma non può essere spostato con il mouse (come nel terminale 4).

O ora spostando tutti gli oggetti creati da Expert Advisor devono essere gestiti da eventi.

Gli oggetti creati dall'Expert Advisor sono selezionati e possono essere spostati. Mostra come lo fai (breve esempio).
 
tol64:
Ho gli oggetti creati dall'Expert Advisor selezionati e possono essere spostati. Mostrami come fai questo (breve esempio).

C'è una proprietà dell'oggetto

SELEZIONABILE IN BASE AL TIPO DI OGGETTO

Disponibilità dell'oggetto

bool

Di default è impostato a false per gli oggetti creati programmaticamente

Документация по MQL5: Стандартные константы, перечисления и структуры / Константы объектов / Свойства объектов
Документация по MQL5: Стандартные константы, перечисления и структуры / Константы объектов / Свойства объектов
  • www.mql5.com
Стандартные константы, перечисления и структуры / Константы объектов / Свойства объектов - Документация по MQL5
 
joo:
Come si fa a determinare durante l'ottimizzazione se la sezione anteriore è ora o no?
No
 
Rosh:

C'è una proprietà dell'oggetto

SELEZIONABILE IN BASE AL TIPO DI OGGETTO

Disponibilità dell'oggetto

bool

Di default è impostato a false per gli oggetti creati programmaticamente

Grazie, lo so. vdv2001 ha qualche problema:

Forum sul trading, sistemi di trading automatico e test di strategie di trading

Bug, bug, domande

vdv2001, 2013.04.25 06:10

Non ho mai provato a spostarlo con un altro oggetto, ma non ho mai visto un tale movimento.

Oppure è ora necessario gestire il movimento di tutti gli oggetti creati dall'Expert Advisor attraverso gli eventi.

//---

Volevo vedere come fa questo per trovare il suo errore.


Motivazione: