Tutte le domande dei nuovi arrivati su MQL4 e MQL5, aiuto e discussione su algoritmi e codici - pagina 181

 
Per favore ditemi, è possibile leggere la larghezza dell'etichetta in pixel? la lunghezza del testo non permette alle lettere di essere di larghezze diverse
 
Money_Maker:
dimmi per favore, puoi scoprire la larghezza dell'etichetta in pixel? la lunghezza del testo non funziona le lettere hanno larghezze diverse

Forse... Dobbiamo capirlo qui.

  • Larghezza/Altezza- gli oggetti hanno larghezza e altezza. Se viene specificato "read-only", significa che i valori di larghezza e altezza sono calcolati solo dopo che l'oggetto è stato disegnato sul grafico;


e poi

OBJPROP_XSIZE

Larghezza di un oggetto lungo l'asse X in pixel. Specificato per OBJ_LABEL (sola lettura), OBJ_BUTTON, OBJ_BITMAP, OBJ_BITMAP_LABEL, OBJ_EDIT, OBJ_RECTANGLE_LABEL.

int

OBJPROP_YSIZE

Altezza di un oggetto lungo l'asse Y in pixel. Specificato per OBJ_LABEL (sola lettura), OBJ_BUTTON, OBJ_BITMAP, OBJ_BITMAP_LABEL, OBJ_EDIT, OBJ_RECTANGLE_LABEL.

int

Способы привязки объектов - Константы объектов - Стандартные константы, перечисления и структуры - Справочник MQL4
Способы привязки объектов - Константы объектов - Стандартные константы, перечисления и структуры - Справочник MQL4
  • docs.mql4.com
Способы привязки объектов - Константы объектов - Стандартные константы, перечисления и структуры - Справочник MQL4
 
Alexey Viktorov:
Forse... Dovremo risolverlo qui.

si è rivelato più facile del previsto) ObjectGetInteger(0, "nome",OBJPROP_YSIZE)

Grazie)
 
string Label_name[2] = 
{ 
"jnfvin", 
"12358"
};

Un'altra domanda nell'ambito globale dichiaro e inizializzo tali array, è possibile farlo in una funzione separata ma che sia visibile in un'altra funzione, so che non si può restituire un array da una funzione, c'è un altro modo...?

 
Money_Maker:

Un'altra domanda nell'ambito globale dichiaro e inizializzo tali array, può essere fatto in una funzione separata, ma che sarebbe visibile in un'altra funzione, so che l'array non può essere restituito dalla funzione, forse c'è un altro modo...?

Potete passare un array per riferimento in una funzione. Poi tutte le modifiche nella funzione saranno fatte con il riferimento all'array che è stato passato.

void OnTick()
 {
  string Label_name[2] = 
  {
   "jnfvin",
   "12358"
  };
   f1(Label_name);
    Print(Label_name[0], "  ", Label_name[1]);
 }

void f1(string & l[])
 {
  l[0] = "Новая строка";
   l[1] = "85321";
 }
 
Alexey Viktorov:

Potete passare un array per riferimento a una funzione. Allora tutte le modifiche nella funzione saranno fatte con l'array a cui si fa riferimento.


Non proprio così, il contrario sarebbe(
Idealmente ottenere un array da una funzione, o dichiararlo e inizializzarlo lì, ma che sia globalmente visibile, o un puntatore a un array...
pensare in questa direzione per non caricare OnInit
 
Money_Maker:

non proprio, il contrario sarebbe(
Idealmente ottenere un array da una funzione o dichiarare e inizializzarlo lì, ma che sarebbe globalmente visibile, o un puntatore a un array...
Penso in questa direzione per non caricare OnInit
Ma perché una tale perversione?
 
Money_Maker: da una funzione per ottenere un array o dichiararlo e inizializzarlo lì, ma per renderlo globalmente visibile, o un puntatore a un array...
Sto pensando in questa direzione per evitare di caricare OnInit
Si dichiara una matrice globale senza specificare la dimensione. La vostra funzione imposta la sua dimensione con ArrayResize. Ed è visibile globalmente, e OnInit viene rilasciato...
 
Artyom Trishkin:
Poiché l'oggetto non è più necessario, perché dovrebbe essere ordinato nella lista degli oggetti? Eliminatelo, e l'elenco degli oggetti richiesti rimarrà come ordinato.

Ci sono esempi di come farlo?
 
Evgenii:

Ci sono esempi di come farlo?
E non hai mostrato un solo pezzo del tuo codice - non è chiaro perché dovresti mostrare un esempio.