Errori, bug, domande - pagina 1063
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
Prova ObjSetInteger(id, Name, OBJPROP_BACK, false);
Provato. La forma cade all'indietro, ma lo fa nel modo più brutto possibile, cioè cade addirittura dietro le sbarre. E il compito è un po' diverso, ho solo bisogno che il testo sia visualizzato nel modulo, con il modulo stesso che si trova sopra la grafica e altri moduli.
Gli oggetti sono visualizzati nell'ordine in cui sono stati creati, se vuoi cambiare l'ordine, devi salvare i dati degli oggetti e ricrearli nell'ordine corretto.
O il bug è anche in questo?
Provato. La forma cade all'indietro, ma lo fa nel modo più brutto possibile, cioè cade addirittura dietro le sbarre. E il compito è un po' diverso, avete solo bisogno che il testo sia visualizzato nel modulo, con il modulo stesso sopra la grafica e altri moduli.
Dovete solo tenere conto dell'ordine in cui vengono creati gli oggetti grafici. Quelli che dovrebbero essere più bassi dovrebbero essere creati per primi.
Sì, è la prima cosa a cui ho pensato. Cambiato l'ordine - stesso risultato. Ma non ci sono miracoli. Ma ora ho preso un progetto funzionante e ho provato a mettere OBJ_EDIT lì e ha funzionato bene, cioè è visibile sopra il modulo. Quindi, tutto sommato, sembra un inferno. Ovviamente ho dimenticato o non ho preso in considerazione qualcosa. Ma volevo comunque risolverlo in modo da non fare lo stesso errore la prossima volta. Ecco il codice di OnInit() per il test:
Sì, è la prima cosa a cui ho pensato. Cambiato l'ordine - stesso risultato. Ma non ci sono miracoli. Ma ora ho preso un progetto funzionante e ho provato a mettere OBJ_EDIT lì e ha funzionato bene, cioè è visibile sopra il modulo. Quindi, tutto sommato, sembra un inferno. Ovviamente ho dimenticato o non ho preso in considerazione qualcosa. Ma vorrei comunque fare in modo di non fare questo errore la prossima volta. Ecco il codice di OnInit() per il test:
In questo caso, abbiamo bisogno di un gestore di oggetti, in modo che il conto di ciò che viene creato e in quale ordine era in un posto, poi non ci sarà sovrapposizione quando una funzione crea questo secondo questo, e il cambiamento di chiamata di funzione cambierà l'ordine.
È difficile prendere questo tipo di bug e anche prevederlo.
Ciao a tutti!
C'è un paragrafo come questo nell'aiuto:
Quindi, se c'è un ChartEvent nella coda degli eventi, non dovrebbe essere accodato una seconda volta. Ho avuto un problema con esso :)
Ho disegnato un Expert Advisor per controllarlo. Si è scoperto che non importa se c'è un evento ChartEvent nella coda o meno, il gestore di ChartEvent viene chiamato tante volte quante ne genera.
Questo è fantastico, ma secondo me ho bisogno di correggere l'aiuto... O mi sbaglio?
Ciao a tutti!
C'è un paragrafo come questo nell'aiuto:
Quindi, se c'è un ChartEvent nella coda degli eventi, non dovrebbe essere accodato una seconda volta. Ho avuto un problema con esso :)
Ho disegnato un Expert Advisor per controllarlo. Si è scoperto che non importa se c'è un evento ChartEvent nella coda o meno, il gestore di ChartEvent viene chiamato tante volte quante ne genera.
Questo è fantastico, ma penso che dobbiamo correggere l'aiuto... O mi sbaglio?
Questo si applica solo al caso di overflow della coda, se la coda è piena allora il tipo di evento che è già nella coda non viene messo.
Se la coda non è piena (e la lunghezza della coda è 1024), tutti gli eventi sono gestiti.
Questo si applica solo se la coda è piena, se la coda è piena il tipo di evento è già nella coda non sarà accodato.
Ma se la coda non trabocca (e la lunghezza della coda credo sia 1024), allora tutti gli eventi sono gestiti.
Capito. Grazie :)
PS: L'Expert Advisor di cui sopra non è riuscito a mettere in coda più di 1000.
Informazioni per MQ. Nel manuale per OnTimer c'è "... per ricevere da EventSetTimer()...". Dovresti anche aggiungere "... o EventSetMillisecondTimer()...".