Domande dai principianti MQL5 MT5 MetaTrader 5 - pagina 1174
![MQL5 - Linguaggio delle strategie di trading integrato nel client terminal MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
Ti stai perdendo delle opportunità di trading:
- App di trading gratuite
- Oltre 8.000 segnali per il copy trading
- Notizie economiche per esplorare i mercati finanziari
Registrazione
Accedi
Accetti la politica del sito e le condizioni d’uso
Se non hai un account, registrati
La seconda e le successive dimensioni di una matrice non possono essere dinamiche. Pertanto, come viene dichiarato un array, per esempio, int Mas[][7]; deve essere preso da MyFun(int &Mas[][7])
Grazie. Non avevo il cervello per farlo.
Ciao programmatori. Ancora una volta chiedo il vostro aiuto. C'è un indicatore standard da cui voglio ottenere un singolo valore. Ho collegato l'indicatore e copiato un array dei suoi valori nel buffer double buf_atr[] Stampato nel log ArrayPrint(buf_atr) mostra questi valori:
0.00032 0.00037 0.00039 0.00039 0.00041 0.00039 0.00037 0.00036 0.00034 0.00035 0.00035 0.00035 0.00034 0.00030
Come faccio ad applicare alla CHIAVE MASSIMA CHE HA IL VALORE 0,00030? Risulta che questo valore non è sulla candela corrente 0 e la precedente ha già formato 1
Sembra funzionare, ma come accedere all'array di celle per lavorarci ulteriormente non lo so ;(
Ciao programmatori. Ancora una volta chiedo il vostro aiuto. C'è un indicatore standard da cui voglio ottenere un singolo valore. Ho collegato l'indicatore e copiato un array dei suoi valori nel buffer double buf_atr[] Stampato nel log ArrayPrint(buf_atr) mostra questi valori:
0.00032 0.00037 0.00039 0.00039 0.00041 0.00039 0.00037 0.00036 0.00034 0.00035 0.00035 0.00035 0.00034 0.00030
Come faccio ad applicare alla CHIAVE MASSIMA CHE HA IL VALORE 0,00030? Risulta che questo valore non è sulla candela corrente 0 e la precedente è già formata 1
Sembra funzionare, ma come accedere all'array di celle per lavorarci ulteriormente non lo so ;(
FUNZIONA EVVIVA!!! Ho bisogno di passare abuf_atr[buf_size-1] Ho provato di tutto. Molte grazie a teVitaly Muzichenko.
Lo stile mql è obbligatorio, riferimento all'array?
Dialog.mqh.
Creata classeCAppDialogPTR- discendente di CAppDialog - consigliare come sovrascrivere correttamente m_background, m_caption ... dalla classe CDialog per accedervi dalla mia classe?
Dialog.mqh.
Non si può. Questi oggetti sono bloccati dalla modifica diretta nella vostra classe, come indicato dalla parola chiave private. Non si può lavorare con loro direttamente. Usate i metodi della classe CDialog che lavorano con questi campi.
Non si può. Questi oggetti sono bloccati dalla modifica diretta nella vostra classe, come indicato dalla parola chiave private. Non si può lavorare con loro direttamente. Usate i metodi della vostra classe CDialog che lavorano con questi campi.
Supponiamo.
Un'istanza creata della classeCAppDialogPTR ha dei controlli (classe CWndContainer-> CWnd* Control(const int ind) const { return(dynamic_cast<CWnd *>(m_controls.At(ind); }) attraverso il quale si può accedere am_background, m_caption
1) Qual è la sintassi per accedere (riferirsi alla memoria) all'oggetto creato?
"CAppDialog::Create(chart,name,subwin,x1,y1,x2,y2);"
Supponiamo.
Un'istanza creata della classeCAppDialogPTR ha dei controlli (classe CWndContainer -> CWnd* Control(const int ind) const { return(dynamic_cast<CWnd *>(m_controls.At(ind)); } ) attraverso cui si può accedere am_background, m_caption
1) Qual è la sintassi per accedere (riferirsi alla memoria) all'oggetto creato?
Non potete ancora accedere ai contrails in modo indirizzabile attraverso la collezione m_controls perché è anche chiusa, inoltre non sapete quale indice corrisponde a quale particolare controllo. L'idea è che CDialog blocca l'accesso agli elementi che lo compongono, ma permette di gestire le sue proprietà principali in modo coerente. Per esempio non possiamo accedere direttamente a m_caption ma possiamo cambiare il suo testo usando il metodo Caption(const string text).
Quello che vuoi è un hack in sostanza. In linea di principio, quando si usa qualsiasi strumento MQ si vuole fare questo o quell'hack, quindi non siete soli. Probabilmente il modo più semplice è copiare la libreria in una directory separata e spostare la sezione privata in protetta. Questo è rozzo e stupido, ma funzionerà. Altre opzioni sono improbabili - codice troppo difficile.
Non potrete comunque accedere alle controparti tramite la collezione m_controls, perché è anche chiusa, inoltre non sapete quale indice corrisponde a quale controllo. L'idea è che CDialog blocca l'accesso agli elementi che lo compongono, ma permette di gestire le sue proprietà principali in modo coerente. Per esempio non possiamo accedere direttamente a m_caption ma possiamo cambiare il suo testo usando il metodo Caption(const string text).
Quello che vuoi è un hack in sostanza. In linea di principio, quando si usa qualsiasi strumento MQ si vuole fare questo o quell'hack, quindi non siete soli. Probabilmente il modo più semplice è copiare la libreria in una directory separata e spostare la sezione privata in protetta. Questo è rozzo e stupido, ma funzionerà. È improbabile che le altre opzioni funzionino perché il codice è troppo difficile.
Modificare il codice sorgente di MQ e rendere pubblici i metodi non è chiaramente il nostro metodo :).
Ma posso fare riferimento alle proprietà Caption dopo la dichiarazione del pannello delle variabili globali:
Ma non solo non ha un bell'aspetto, ma questo codice dietro la classeCAppDialogPTR. Come posso fare lo stesso all'interno della classeCAppDialogPTR?