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
Esempio di codice semplice:
Qualsiasi cosa, una volta iniziata, deve essere portata a termine. Anche se non serve a nessuno. Questo è il principio.
È così. Se l'interfaccia non solo può essere disegnata, ma anche utilizzata. Lo spero.
Necessità. Se l'interfaccia non solo può essere disegnata, ma anche utilizzata. Speriamo.
Assolutamente sì. È su questo che sto lavorando.
La duplicazione di questo ramo in diverse lingue è una prova difficile, ovviamente, per chi non parla russo. Guardando avanti, posso farle un paio di domande? Dato che la sua GUI è stata creata senza l'uso di classi, sorgono subito diverse incertezze. Dopotutto, quali dovrebbero essere i requisiti della GUI come prodotto? La comodità e l'intuitività della creazione di una GUI, così come il suo comodo utilizzo nel processo di lavoro. A questo proposito:
Domanda 1
Qual è il meccanismo che consente al programmatore di gestire gli eventi della vostra GUI? Ad esempio, nelle mie GUI, quando creo uncontrollo, aggiungo un puntatore a una funzione di gestione quando si verifica un evento di modifica su quel controllo. Esempio di codice:
Domanda 2
Come può un programmatore accedere allo stato di un particolare elemento della GUI? Ad esempio, nella mia GUI posso ottenere lo stato della casella di controllo (bool) in questo modo: .
Ma uso classi annidate. Come si fa?
Domanda 2
Come può un programmatore accedere allo stato di un particolare elemento della GUI? Ad esempio, nella mia GUI posso ottenere lo stato della casella di controllo (bool) in questo modo: ma uso classi annidate. Come si fa?
Nicholas ciao!
Ti rispondo in ordine sparso:
1. L'utente NON interagisce (dalla parola a tutti) con il mio codice. Non è necessario. Più avanti capirai perché. L'utente ha bisogno SOLO del linguaggio di markup. (L'ho già sottolineato diverse volte, ma ricevo sempre questa domanda ricorrente dai programmatori. ) Il motivo è che l'utente "inizializza" l'array solo utilizzando parole chiave del linguaggio che sono definite da define nel codice del costruttore. L'interprete (indicatore) invia un array con il codice di markup (quello che ho mostrato sopra) al costruttore (che è l'EA sullo stesso grafico) e il costruttore legge l'array e costruisce la GUI. Il codice del linguaggio di markup è un'istruzione per il costruttore. Esso esegue la costruzione (disegno, inizializzazione dei parametri degli elementi, impostazioni, ecc.
2. Il meccanismo è semplice. Dopo aver finito di modificare l'interfaccia, l'utente richiama il menu contestuale del costruttore facendo doppio clic sul grafico e seleziona l'opzione di salvataggio. Il costruttore stampa tutte le informazioni in due file. Questi file vengono utilizzati dal motore.
Mi spiego meglio: l'utente collega i due file ricevuti dal costruttore e dal motore (che fornirò) al suo EA (nell'intestazione dell'EA. Fornirò un esempio di collegamento). Quindi, scrive diverse chiamate nelle funzioni OnInit(), OnTimer(), OnChartEvent() e OnDeinit() (fornirò un esempio). Successivamente, entra in un file stampato dal costruttore chiamato Internal_API. Questo file contiene tutto il necessario per collegare i controlli della GUI all'Expert Advisor/indicatore utente. Ovvero, le funzioni generate degli elementi e le istruzioni dettagliate. In seguito fornirò degli esempi di collegamento.
Anche in questo caso, nulla di complicato. C'è tutto. Ecco ad esempio come si presenta l'interfaccia di cui sopra:
1. Scrivere una finestra.
2. Seguire le istruzioni riportate di seguito:
3.
4. Aprire il file InternalAPI e avviare la connessione. Il file contiene tutto.
L'utente deve solo scrivere le sue azioni nelle condizioni della funzione OnGuiEvent(). Il resto NON deve essere toccato. .
La commutazione dello stato dei controlli e l'ottenimento/impostazione dei loro valori avviene con l'aiuto di funzioni generate dal costruttore, che l'utente vedrà nell'intellisense.
Dal codice del file sopra riportato, l'utente lavora solo con questa parte:
Nicholas, ciao!
Ti rispondo in ordine sparso:
1. L'utente NON interagirà (da quel che si legge in giro) con il mio codice. Non è necessario. Poi capirete perché. L'utente ha bisogno SOLO del linguaggio di markup. (L'ho già sottolineato diverse volte, ma ricevo sempre questa domanda ricorrente dai programmatori). ) Il motivo è che l'utente "inizializza" l'array solo utilizzando parole chiave del linguaggio che sono definite da define nel codice del costruttore. L'interprete (indicatore) invia un array con il codice di markup (quello che ho mostrato sopra) al costruttore (che è l'EA sullo stesso grafico) e il costruttore legge l'array e costruisce la GUI. Il codice del linguaggio di markup è un'istruzione per il costruttore. Esso esegue la costruzione (disegno, inizializzazione dei parametri degli elementi, impostazioni, ecc.
2. Il meccanismo è semplice. Dopo aver terminato la modifica dell'interfaccia, l'utente richiama il menu contestuale del costruttore facendo doppio clic sul grafico e seleziona l'opzione di salvataggio. Il costruttore stampa tutte le informazioni in due file. Questi file vengono utilizzati dal motore.
Mi spiego meglio: l'utente collega i due file ricevuti dal costruttore e dal motore (che fornirò) al suo EA (nell'intestazione dell'EA. Fornirò un esempio di collegamento). Quindi, scrive diverse chiamate nelle funzioni OnInit(), OnTimer(), OnChartEvent() e OnDeinit() (fornirò un esempio). Successivamente, entra in un file stampato dal costruttore chiamato Internal_API. Questo file contiene tutto il necessario per collegare i controlli della GUI all'Expert Advisor/indicatore utente. Ovvero, le funzioni generate degli elementi e le istruzioni dettagliate. In seguito fornirò degli esempi di connessione.
Anche in questo caso, nulla di complicato. C'è tutto. Ecco ad esempio come appare l'interfaccia di cui sopra:
1. Abbiamo scritto una finestra.
2. Seguire le istruzioni riportate di seguito:
3.
4. aprire il file InternalAPI e avviare la connessione. Il file contiene tutto.
L'utente deve solo specificare le sue azioni nelle condizioni della funzione OnGuiEvent(). Il resto NON deve essere toccato.
La commutazione dello stato dei controlli e l'ottenimento/impostazione dei loro valori avviene con l'aiuto di funzioni generate dal costruttore, che l'utente vedrà nell'intellisense.
Peter, non ti capisco.
È importante che i programmatori sappiano come interagire con la GUI durante il lavoro. Ecco un esempio della mia GUI. Ho fatto clic sulla scorciatoia del tema chiaro/scuro e questo evento ha immediatamente attivato la funzione per cambiare i colori dello sfondo e le linee. Come si realizza questa interazione?
Cosa significa "L'utente NON interagirà (affatto) con il mio codice " ? Il programmatore deve interagire non con il codice, ma con gli eventi che dovrebbero generare questo codice. Dopo tutto, la GUI non è un programma indipendente. La GUI deve interagire con il programma principale dello sviluppatore. Che si tratti di un indicatore o di un EA.