Galería de interfaces de usuario escritas en MQL - página 53

 
La nueva versión mejora la velocidad, ¡lo cual es estupendo!
 
Реter, ¿podrías considerar cambiar el directorio al inglés para futuras versiones? Los archivos de código fuente que incluyen nombres de catálogo se realizan con sustitución de texto.
 
hini #:
Rether, ¿considerarías cambiar el catálogo al inglés en futuras versiones? Los archivos de código fuente que contienen los nombres de los catálogos se sustituyen por texto.

Por supuesto. Ya lo he pensado. Haré una versión especial con los nombres de los catálogos en inglés.

 

No estoy comprobando los archivos sólo los comentarios aquí. Pero ese 'lag' para mi no parece estar relacionado con la velocidad, sino con el uso de ChartRedraw antes de crear completamente el nuevo recurso. Porque se queda con el lienzo en blanco y luego muestra el nuevo lienzo.

 
Реter Konow #:

Sí, claro. Lo he pensado. Haré un lanzamiento especial que incluya el nombre del catálogo en inglés.

Mi sugerencia sería no tener una versión especial con directorios en inglés, sino sólo una de estas versiones en inglés, cambiando simplemente el nombre del directorio a inglés, y el siguiente paso sería cambiar el nombre del archivo a inglés, y el código fuente lo seguirías escribiendo en ruso.
Por lo menos el resto de nosotros viendo el código sólo tendrá que mirar el nombre del archivo para entender lo que probablemente hace.
 
hini #:
Yo sugeriría no hacer una versión especial con catálogos en inglés, sino hacer sólo una de esas versiones en inglés, simplemente cambiando el nombre del catálogo a inglés, y el siguiente paso sería cambiar el nombre del archivo a inglés, y seguirás escribiendo el código fuente en ruso.
Al menos el resto de los que miramos el código sólo tendremos que mirar el nombre del archivo para darnos cuenta de lo que probablemente hace.

Estoy de acuerdo. Poco a poco cambiaré los nombres de los directorios al inglés. Así será más racional.

 
Samuel Manoel De Souza #:

No he comprobado los archivos, sólo los comentarios aquí. Pero este "lag" para mí no parece estar relacionado con la velocidad, sino con el uso de ChartRedraw antes de que el nuevo recurso esté completamente creado. Porque muestra un lienzo en blanco y luego muestra el nuevo lienzo.

Interesante idea, intentaré probarla. Gracias.

 

Y entonces, una actualización...

Esta es una actualización provisional. En unos días lanzaré la siguiente versión. Habrá nuevas funcionalidades para la interacción del programa con los controles.

Tengo que decir esto: Trabajo en dos versiones - 2470 y la nueva. La mayor parte del desarrollo se realiza en la versión antigua. La compilación es más rápida: 4 segundos frente a 26-32 segundos. La nueva compilación funciona un poco diferente y se nota visualmente. A veces es más rápida, a veces más lenta. Tal vez sólo lo parezca. Es difícil encontrar una diferencia, pero a mí me parece que está ahí. La interfaz en la versión antigua vuela. En la nueva. casi vuela. Tal vez creo que es porque estoy acostumbrado.

Sin embargo, hay matices. Por ejemplo, hay un problema al cambiar de gráfico, cuando se devuelven valores incorrectos de altura y anchura del gráfico. Esto hace que la barra de tareas salte. Me las arreglé para evitar este problema, pero entonces la barra de tareas no reacciona a otros eventos de cambio de tamaño del gráfico. Al final - decidí dejarlo como estaba. La barra de tareas saltará al cambiar de gráfico (mientras haya un problema de devolución de valores incorrectos), pero se adaptará normalmente a otros eventos.

Pero eso no es todo. Resulta que los eventos de cambio de tamaño del gráfico no se producen instantáneamente y hay una pausa de medio segundo. Este retraso se superpone al tiempo de redibujar la barra de tareas y se obtiene un retraso decente. Aquí no puedo hacer nada.


Voy a decir esto: por supuesto, he acelerado significativamente los gráficos, pero todavía hay algunas otras soluciones no optimizadas en el código. Estoy trabajando duro en ellas. Principalmente se trata de la transición del foco de la ventana y la cola de redibujado. Ocurren algunas llamadas innecesarias. La barra de tareas se retrasa. Arreglé lo que tuve tiempo de arreglar, aunque no todo. Pero el resto es cuestión de los próximos días. Por lo demás, no hay mucho que mejorar... tal vez sólo peinar y perfumar el código para hacerlo fragante)).

En general, si depuramos todas las soluciones no optimizadas que quedan... volará... bueno, dentro de las velocidades disponibles para un programa MQL, por supuesto.


Tome la liberación.

Archivos adjuntos: