[Qualsiasi domanda da principiante, per non ingombrare il forum. Professionisti, non passate oltre. Da nessuna parte senza di te - 4. - pagina 46

 

Ciao, ho bisogno di aiuto per rifare il codice. La parte principale del codice è allegata come file. Il codice costruisce una tabella. Ho capito come inserire i miei valori in Content - contenuto della tabella, ma ho provato senza successo a fare lo stesso con il colore del carattere.

E così, è necessario fare un controllo del colore del testo come fatto con Content:

   // Готовим массив с содержимым таблицы      
      for(int i=0;i<20;i++)
      {
       for(int j=0;j<2;j++)
       {
        Content[i][j]="Колонка "+(j+1)+", строка "+(i+1);
       }
      }

Cioè più o meno così:

aContentTextColor [i][j] // i, j номер колонки и строки - присваивать им цвет
File:
1.mq4  8 kb
 
Kondratiev_A_A:

Ciao, ho bisogno di aiuto per rifare il codice. La parte principale del codice è allegata come file. Il codice costruisce una tabella. Ho capito come inserire i miei valori in Content - contenuto della tabella, ma ho provato senza successo a fare lo stesso con il colore del carattere.

E così, è necessario fare il controllo del colore del testo come fatto con Content:

Cioè qualcosa del genere:

aumentare il numero di elementi per "righe" (per esempio for(int j=0;j<4;j++) e anche nella dichiarazione dell'array, di conseguenza) e scrivere nel 2° e 3° (per numeri) i codici di colore degli elementi in modo conveniente per un'ulteriore interpretazione

o per un colore potete definire il secondo array della stessa dimensione, come per il contenuto

 
smshev:

aumentare il numero di elementi per "linea" (for(int j=0;j<4;j++) e anche nella dichiarazione dell'array, rispettivamente) e scrivere nel 2° e 3° (per numero) elemento i codici colore in una forma comoda per l'ulteriore interpretazione

o per il colore, potete creare un secondo array della stessa dimensione del contenuto

Grazie per la risposta!

Provato la seconda opzione con l'aggiunta dell'array, ma l'altro codice è legato - provato a cambiare l'altro codice puramente logico per analogia con il contenuto - errori.

Non lo capisco con la prima variante, ma ho la sensazione che non funzionerà - non sarà compatto)

 
Kondratiev_A_A:

Grazie per la risposta!

Provato la seconda opzione con l'aggiunta dell'array, ma l'altro codice è legato - provato a cambiare l'altro codice puramente logico per analogia con il contenuto - errori.

Non lo capisco con la prima variante, ma sento che non funzionerà - non sarà compatto)

Lasciatemi spiegare la prima variante:

dichiarare array non, per esempio, < stringa Content[100][2] >, ma <stringa Content [100][3]>, nell'elaborazione del ciclo oltre alla vostra stringa <Content[i][j]="Colonna "+(j+1)+", stringa "+(i+1);>

aggiungere < Content[i][j+1]="Green" > se avete bisogno di un solo colore per linea. Oppure ="1", a seconda di come decidete di codificare i colori lì

 
smshev:

Lasciatemi spiegare la prima opzione:

dichiarare un array non, per esempio, < stringa Content[100][2] >, ma <stringa Content [100][3]>, nel ciclo di elaborazione oltre alla vostra stringa <Content[i][j]="Column "+(j+1)+", string "+(i+1);>

aggiungere < Content[i][j+1]="Green" > se avete bisogno di un solo colore per linea. Oppure ="1", a seconda di come decidete di codificare i colori lì


Ora capisco cosa intendo, grazie!
 
Lians:

atztek, quindi guarda il codice, se sai com'è il codice della funzione ed è posizionato così:

ZS: se la funzione è in INIT() o DEINIT() puoi provare senza il codice :)

Alcune operazioni che la funzione può fare in deinit non sono permesse in start, ecc. (è usato diverse volte in diverse parti del codice). Ho pensato che forse c'è un comando che permette di controllare.
E in generale, è stato risolto aggiungendo una variabile esterna in più alla lista delle variabili della funzione.

 
smshev:

Lasciatemi spiegare la prima opzione:

dichiarare un array non, per esempio, < stringa Content[100][2] >, ma <stringa Content [100][3]>, nel ciclo di elaborazione oltre alla vostra stringa <Content[i][j]="Column "+(j+1)+", string "+(i+1);>

aggiungere < Content[i][j+1]="Green" > se avete bisogno di un solo colore per linea. Oppure ="1", a seconda di come decidete di codificare i colori lì


Purtroppo non mi era chiaro, perché cambiare il numero di colonne da 2 a 3? E perché assegnare un valore (valore di stringa) a Green? Non mi è chiaro...
 
atztek:

Alcune operazioni che le funzioni possono eseguire in deinit non sono permesse in start, ecc. (è usato diverse volte in diverse parti del codice). Ho pensato che forse c'è un comando che permette di controllare.
E in generale, è stato risolto aggiungendo una variabile esterna in più alla lista delle variabili della funzione.

È meglio impostare una variabile a livello globale, alla quale il valore deve essere assegnato a seconda della funzione in cui si trova il programma. Allora non c'è bisogno di monitorare il parametro passato alla funzione utente, che è una potenziale fonte di errori.
 

Ragazzi, per favore consigliatemi!

Ho bisogno che il programma mantenga lo SL a dieci pip dal prezzo e quando chiude al livello di SL, cambi l'ordine in quello opposto. Come si può fare?

 
alsu:
È meglio definire una variabile a livello globale, alla quale può essere assegnato un valore a seconda della funzione in cui si trova il programma. Allora non c'è bisogno di tenere traccia del parametro passato nella funzione utente, che è una potenziale fonte di errori.
Vero, ma si possono ancora fare errori quando si assegnano valori diversi a una variabile globale;-)
Grazie!
Motivazione: