![MQL5 - Lenguaje de estrategias comerciales para el terminal de cliente MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
Está perdiendo oportunidades comerciales:
- Aplicaciones de trading gratuitas
- 8 000+ señales para copiar
- Noticias económicas para analizar los mercados financieros
Registro
Entrada
Usted acepta la política del sitio web y las condiciones de uso
Si no tiene cuenta de usuario, regístrese
Quién sabe por qué no funciona...
funciona en C++
¿Qué te hace pensar que el esquema no se elaboró, había un requisito previo para ello?funciona en C++
¿Qué te hace pensar que no hay un esquema, había un requisito previo para ello?¿Dónde está? No lo he visto en tres páginas.
Estaba pensando en hacer una base de uso que se redujera a un estilo de código mínimo Nueva_Ventana<<Ventana_Superior.Tamaño; Nueva_Ventana<<Ventana_Superior.Posición; Nueva_Ventana.Tamaño<<0.5 (el tamaño se convierte automáticamente en la mitad de lo anterior); ...
Y esta clase ya tiene en cuenta la relación desde la posición de la cruz pequeña hasta la ventana superior (base).
Parece que no va a salir bien... sucede.Estaba pensando en hacer una base de uso que se redujera a un estilo de código mínimo Nueva_Ventana<<Ventana_Superior.Tamaño; Nueva_Ventana<<Ventana_Superior.Posición; Nueva_Ventana.Tamaño<<0.5 (el tamaño se convierte automáticamente en la mitad de lo anterior); ...
Y esta clase ya tiene en cuenta la relación desde la posición de la cruz pequeña hasta la ventana superior.
...
Bueno ya he descrito muchas veces los "defectos" que desde mi punto de vista veo en la biblioteca estándar y en la biblioteca de Anatoly.
Ambas bibliotecas tienen, en mi opinión, una desventaja importante:la interfaz está construida sobre objetos de gráfico discretos, esdecir, cuantos más controles haya en la interfaz, más objetos aislados habrá en el propio gráfico. Por un lado no es un problema en sí mismo, pero por otro lado es un problema al arrastrar los diálogos, ya que no se arrastra un único objeto "formulario con elementos", sino muchos elementos diferentes. Y esto consume recursos adicionales.
La biblioteca de Anatoly es muy elegante, pero es compleja en su composición y difícil de integrar en el programa principal. Y la biblioteca estándar es limitada en los controles mismos, aunque la arquitectura original es muy buena en mi opinión.
De hecho, la mejor solución sería lo que Petr Konov intenta hacer: constructor de GUI con generación de código de GUI, pero con modelo de eventos extendido, de modo que al integrarse con el programa principal, no habría que escarbar en un enorme código de GUI (algo así como el análogo de MVVM), y por supuesto con objetos que los usuarios podrían extender por su cuenta.
Por supuesto, esta es una visión muy simplificada del problema de las bibliotecas gráficas. No se trata de arrastrar y soltar formularios y la falta de manejo de kanvas, que limita las posibilidades y la funcionalidad de la GUI. La conclusión es que los objetos MTtienen pocas propiedades, y los manejadores de la biblioteca no están suficientemente desarrollados para gestionar los elementos dibujados y soportar todas sus diversas capacidades. La complejidad de los objetos MT y la funcionalidad de control de las bibliotecas no alcanza el nivel mínimo requerido por kanvas.
Tomar estas bibliotecas y reescribirlas para kanvas significa elevarlas a un nivel fundamentalmente nuevo, lo que a priori no puede ser fácil y sencillo.
ZS. Anatoly inició el camino hacia los kanvas en su biblioteca y fue el primero en crear tablas dibujadas en MKL. Sin embargo, el método para construirlas es imperfecto, debido a que las células son elementos semiindependientes y hay dificultades para abordar cada una de ellas individualmente.
Recuerdo lo que le costó la transición a Anatoly y el tiempo que duró.
Es más o menos así
Este es el final de la clase de coordenadas. Ni siquiera sé qué es lo siguiente.
Sin embargo, creo que deberíamos añadir el posicionamiento.
En el estilo de siguiente, en, izquierda, arriba. cent.....
Es algo así.
También olvidaste esto:
Es algo así.
Y eso es lo que falta:
Y esto es lo que falta:
Quería usar plantillas pero no compilan, el ejemplo simplificado de la página anterior
Y no es seguro que sea exactamente int y no algún enum, y entonces no quieres corregir el código
¿Y por qué necesitamos un bool ahí?
Lo ideal sería que fuera así
Y no hay TD3 (de hecho toda la clase está escrita para dos valores). Por qué llamé a TD también escrito en el código