Errores, fallos, preguntas - página 3127

 

Ah, ¿ya no funciona este tema en la depuración?
Lástima :(( Era muy útil en mi trabajo


 
Nikolai Semko #:

Sí, probablemente tengas razón. Es probable que así sea.
Y para ahorrar recursos, sería bueno controlar la actividad de la ventana y no generar un mapa de bits si la ventana no está activa.

Merece la pena comprobarlo en lugar de hacer suposiciones.

Lo que hemos descubierto:

  • el recurso no se borra al cambiar de ventana
  • al cambiar de ventana, el evento CHARTEVENT_CHART_CHANGE se produce porque la ventana se redimensiona al tamaño de la anterior "no todas las ventanas", es decir, como si la ventana se cambiara a este modo
  • es razonable monitorizar la actividad de la ventana (ChartGetInteger(0, CHART_BRING_TO_TOP)) y desactivar la generación del mapa de bits (llenar el lienzo) para ahorrar recursos de la CPU si la ventana está inactiva


En el indicador de prueba, el contador se guarda en el recurso kanvas.

Archivos adjuntos:
 
Nikolai Semko #:

Lo que se ha descubierto:

  • el recurso no se borra al cambiar de ventana
  • el evento CHARTEVENT_CHART_CHANGE se produce al cambiar de ventana, porque la ventana se redimensiona al tamaño de la anterior "no todas las ventanas", es decir, como si la ventana se cambiara a este modo:
  • es razonable monitorizar la actividad de la ventana (ChartGetInteger(0, CHART_BRING_TO_TOP)) y desactivar la generación del mapa de bits (rellenar el lienzo) para ahorrar recursos de CPU en caso de que la ventana esté inactiva

En el indicador de prueba, el contador se guarda en el recurso kanvas.

Así que este es su error obvio - usar el mismo recurso en muchos gráficos en muchos indicadores.
sus indicadores (o EA) no funcionan si la ventana no está activa - es decir, el usuario no puede utilizar varias copias simultáneamente en diferentes gráficos.
 
Taras Slobodyanik #:

así que es obvio su error - utilizar el mismo recurso en muchos gráficos en muchos indicadores.
sus indicadores (o EA) no funcionan si la ventana no está activa - es decir, el usuario no puede utilizar varias copias de ellos simultáneamente en diferentes gráficos.
¿Qué es esta tontería, Taras?
Ni siquiera sé cómo responder.
Estudia las matemáticas.
¿Qué tiene que ver con el rendimiento de los indicadores y los resultados gráficos? Cada indicador o EA tiene su propio recurso gráfico.
Mira la clase CCanvas, cómo se forma el nombre del recurso.
 
Nikolai Semko #:
¿Qué tiene que ver esto con el rendimiento de los indicadores y los resultados gráficos? Cada indicador o EA tiene su propio recurso gráfico.
Mira la clase CCanvas, cómo se forma el nombre del recurso.

Y cuando los recursos son los mismos, se redibujan para todas las copias.

He comprobado tu código en modo "ventana" y en el mismo gráfico: el tamaño es el mismo.
Para el modo "expandido", sí, el tamaño cambia, pero esto es un error antiguo, tiene varios años.

¿Qué tiene que ver el funcionamiento del indicador y la salida gráfica?

Me refiero a que si la ventana está inactiva y se recomienda no refrescar el lienzo - significa que

ps. y en consecuencia - los paneles no funcionarán gracias a sus consejos :)

es decir, visualmente en modo "ventana", los indicadores (y el EA) no se actualizarán.

ps. Sin embargo, si el cheque sólo en OnChartEvent, debería funcionar, tengo que comprobar.

 
Taras Slobodyanik #:

Cuando los recursos son los mismos, se redibujan para todas las copias.

no son lo mismo

si la ventana está inactiva, se recomienda no actualizar el lienzo - esto significa que

es decir, visualmente en modo "ventana", los indicadores (y el EA) no se actualizarán.

sí, estaba mal con CHART_BRING_TO_TOP
debe utilizar la opción fxsaber

 
Nikolai Semko #:

Lo que se ha descubierto:

  • el recurso no se borra al cambiar de ventana
  • el evento CHARTEVENT_CHART_CHANGE se produce al cambiar de ventana, porque la ventana se redimensiona al tamaño de la anterior "no todas las ventanas", es decir, como si la ventana se cambiara a este modo:
  • es razonable monitorizar la actividad de la ventana (ChartGetInteger(0, CHART_BRING_TO_TOP)) y desactivar la generación del mapa de bits (llenar el lienzo) para ahorrar recursos de la CPU si la ventana está inactiva


En el indicador de prueba, el contador se guarda en el recurso kanvas.

Perfecto. Ahora puedes saber exactamente cómo funcionan las cosas, en lugar de adivinarlas. Será útil para cualquiera que trabaje con CCanvas.

 
Nikolai Semko #:

Ah, ¿este tema en la depuración ya no funciona?
Lástima :((( Era muy útil en mi trabajo


¿Qué versión tienes, la beta o la de lanzamiento?

 
Mihail Matkovskij #:

¿Qué versión tienes, la beta o la de lanzamiento?

 
Nikolai Semko #:

Es probable que estés en la versión beta. Pensaba que esta función había desaparecido en la versión beta. Pero he comprobado el mío (build 3091, versión de lanzamiento) y tampoco funciona.