Errores, fallos, preguntas - página 2189

 
AVAAR:

Gracias. De verdad, ¡funciona!)

Y no tenía ni idea de que la compilación tenía que hacerse regularmente sin ni siquiera hacer cambios...

Sólo tienes que leer lo que está escrito en las pestañas Expertos y Registro o en el probador - para entender la causa.

 

Si la secuencia de comandos se llama a menudo - repetidamente después de la ejecución - el desplazamiento de la programación deja de funcionar, es decir, los comandos para esta acción se omiten

   long handle=ChartID(); 
   if(handle>0) // если получилось, дополнительно настроим 
     { 
      ChartNavigate(handle,CHART_END,-2000); 
     } 
 
Aleksey Vyazmikin:

Si la secuencia de comandos se llama a menudo - repetidamente después de la ejecución - el desplazamiento de la programación deja de funcionar, es decir, los comandos para esta acción se omiten

Este es un comando asíncrono.
 
Artyom Trishkin:
Es un comando asíncrono.

Entonces, ¿cómo se comprueba si funciona?

 
Aleksey Vyazmikin:

Entonces, ¿cómo se comprueba que funciona?

Por el hecho del desplazamiento.
 
Artyom Trishkin:
Sobre el hecho del desplazamiento.

Ya veo, es decir, la sugerencia es esperar el desplazamiento, si no ocurre, entonces repetir el comando de desplazamiento, ¿correcto?

 
Aleksey Vyazmikin:

Ya veo, así que la sugerencia es esperar a que se produzca el desplazamiento, y si no se produce, repetir el comando de desplazamiento, ¿no?

Tenemos que pensar en cómo captar la activación de comandos asíncronos, y cuáles pueden ser las trampas.

Supongamos que tenemos un número de barra visible antes de emitir un comando - lo memorizamos. Hasta que no cambie el número, el comando no ha funcionado. Cuando cambia, funciona.

¿Y si no se cambia? ¿Cuándo se decide que la orden se ha perdido en la cola y se repite la orden? Y si después de repetir el comando, el anterior sí funcionó, y tenemos otro en la cola - habrá un turno extra.

En general, hay que experimentar. No puedo pensar en todo a la vez...

 
Artyom Trishkin:

Hay que pensar en cómo captar la activación de los comandos asíncronos y en cuáles son las trampas.

Digamos que tenemos un número de barra visible antes de que se dé la orden: lo tenemos memorizado. Hasta que no cambie el número, el comando no ha funcionado. Cuando cambia, funciona.

¿Y si no se cambia? ¿Cuándo se decide que la orden se ha perdido en la cola y se repite la orden? Y si después de repetir el comando, el comando anterior funcionó, y tenemos otro en la cola - será un turno extra.

Bueno, habrá que experimentar un poco. No se me ocurre ninguno de inmediato...

Lo tengo - caso difícil - voy a pensar en ello, gracias.

 
Aleksey Vyazmikin:

Lo tengo - caso difícil - voy a pensar en ello, gracias.

Si te basas sólo en el hecho del desplazamiento, entonces el gráfico también puede ser desplazado a mano - eso es un agujero en la lógica...

 
Artyom Trishkin:

Si te basas sólo en el desplazamiento, el gráfico también se puede desplazar a mano - hay un agujero en la lógica...

Después de tres minutos de experimentación, he llegado a la conclusión de que el cambio proviene de


y no desde la posición actual.