Errori, bug, domande - pagina 1323

 
Aliaksandr Yemialyanau:

Provato questo:

Non ha funzionato, non si apre e non c'è niente nei log sul file.

Horidotto la dimensione del file a 12KB - ha funzionato. Nel registro c'è scritto:

File di prova aggiunto: Files\EURUSD.dat. 11540 byte caricati

Forse c'è una limitazione delle dimensioni del file per il tester?

No, c'è un limite, ma non così tanto (non ricordo a colpo d'occhio, qualcosa come 64 meg). Ti ho dato un esempio con un file di 140 kilobyte

Proviamo a riprodurre il problema a casa

 
Slawa:

No, c'è un limite, ma non così tanto (non ricordo a colpo d'occhio, qualcosa come 64 meg). Ho fatto un esempio con un file di 140 kilobyte

Cercheremo di riprodurre il problema a casa

Ho provato a cambiare la dimensione del file. Il problema si verifica a circa 16 MB.

15 625 KB si apre. Log: file di prova aggiunto: Files\EURUSD.dat. 16000020 byte caricati

16.407 KB - non c'è alcuna registrazione nei log sul trasferimento del file.

File:
20150706.log  6 kb
 

Potete dirmi come aggiornare un modulo creato usando la Libreria Standard (CAppDialog)?

 
Konstantin Karpov:

Potete dirmi come aggiornare un modulo creato usando la Libreria Standard (CAppDialog)?

Se avete lavorato con la grafica, basta aggiornare la schermata ChartRedraw.
 
Karputov Vladimir:
Se avete lavorato con la grafica, basta aggiornare la schermata ChartRedraw.

Intendo il meccanismo di aggiornamento dei dati nel modulo. Cioè creare, per esempio, un oggetto etichetta e mostrarlo al modulo con il metodo Text(_field_class_). Ma l'oggetto _field_class_ sarà statico - non viene aggiornato. E ne abbiamo bisogno in modo che quando i dati fossero cambiati nella _field_class_, il modulo sarebbe aggiornato. Non voglio creare il mio meccanismo di aggiornamento se è già specificato.

 
Konstantin Karpov:

Intendo il meccanismo di aggiornamento dei dati nel modulo. Cioè creare, per esempio, un oggetto etichetta e mostrarlo al modulo con il metodo Text(_field_class_). Ma l'oggetto _field_class_ sarà statico - non viene aggiornato. E ne abbiamo bisogno in modo che quando i dati fossero cambiati nella _field_class_, il modulo sarebbe aggiornato. Non voglio creare il mio meccanismo di aggiornamento, se è già fornito di sicuro.

Le informazioni di testo modificate sono un ridisegno dello schermo. Potete usareChartRedraw per aggiornare lo schermo.
 
Karputov Vladimir:
Le informazioni di testo modificate sono un ridisegno dello schermo. Potete usareChartRedraw per aggiornare lo schermo.

Cosa c'entra l'aggiornamento del grafico con la necessità di aggiornare i dati :)

L'ho già capito, devi sovrascrivere il metodo virtuale OnShow()

 
Konstantin Karpov:

Cosa c'entra l'aggiornamento del grafico con la necessità di aggiornare i dati :)

L'ho già capito, devi sovrascrivere il metodo virtuale OnShow()

Dovresti provare :), e poi vedere il risultato.
 
Karputov Vladimir:
Dovresti provare :) e poi vedere il risultato.

Non volete capirmi, non ho bisogno di aggiornare la grafica, ho bisogno di aggiornare i dati nel modulo, quando viene aggiornato, questo si ottiene con il meccanismo di aggiornamento fornitodalla libreria standard.

Il metodo virtuale OnShow() è sovrascritto, che aggiorna semplicemente i campi necessari usando il metodo Text(_field_class_). E poi nel metodo chiamante, in cui passiamo i parametri necessari per visualizzare il modulo, assegniamo nuovi valori ai campi della classe (data) e chiamiamo il metodo Show();

Stavo solo cercando un meccanismo standard, che è usato in varie librerie C++, incluso MQL.

File:
test_NewForm.ex5  192 kb
 
Konstantin Karpov:

Non volete capirmi, non ho bisogno di aggiornare la grafica, ho bisogno di aggiornare i dati nel modulo, quando vengono aggiornati, questo si ottiene con il meccanismo di aggiornamento fornitodalla libreria standard.

Il metodo virtuale OnShow() è sovrascritto, che aggiorna semplicemente i campi necessari usando il metodo Text(_field_class_). E poi nel metodo chiamante, in cui passiamo i parametri necessari per visualizzare il modulo, assegniamo nuovi valori ai campi della classe (data) e chiamiamo il metodo Show();

Stavo solo cercando un meccanismo standard usato in varie librerie C++, incluso MQL

Tutto quello che c'è sul grafico è grafica. Testo modificato in un campo di testo, quindi devi forzare il refresh dello schermo perché l'utente veda il cambiamento. Te lo dico io - sarebbe stato provato molto tempo fa :).