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

 
hini #:
¿Es esta parte del código la base del constructor

Las funciones de este archivo enlazan controles de interfaz de varias maneras. Por ejemplo

1. El comando SWITCH_ALL en el lenguaje de marcado significa establecer el cambio de estado activado entre todos los elementos de un grupo. Supongamos que hay 10 botones de radio en un grupo. Este comando hará que los botones cambien entre sí al pulsarlos sin código adicional. Lo mismo ocurre con cualquier elemento: pestañas, botones simples, casillas de verificación, ... cualquier cosa sobre la que se pueda hacer clic. Incluso se pueden intercambiar diferentes tipos de elementos. El comando es conveniente si hay muchos elementos. Si necesita cambiar elementos individuales dentro de un grupo, sus nombres aparecen entre las palabras SWITCH, ... FIN,.

2. El comando SYNC funciona de forma similar, pero con los parámetros de los elementos. Sincroniza los cambios en los valores de los parámetros. Por ejemplo, vinculamos el deslizador y el campo de entrada con botones, de modo que al introducir un valor en el campo de entrada, el propio deslizador se desplaza a la posición deseada. O bien, al mover el control deslizante, cambian los valores del campo de entrada vinculado a él. Puede sincronizar los valores de los parámetros de diferentes elementos si los tienen. La función "Set_SYNC()" ayuda a hacerlo.

3. C.word BLOQUES abre la lista de elementos a bloquear cuando se pulsa el elemento principal. La función "Set_lock_elements()" es parcialmente responsable de este comando.

4. La función "Set_link_between_fields_and_tabs()" hace exactamente lo que su nombre indica: establece un vínculo entre pulsar sobre una pestaña y abrir el espacio de sus elementos dentro de la ventana. Es decir, gestiona el fenómeno de los elementos asignados a ella.


¿Puede considerarse la base del constructor? Más bien, es una de las partes, de las que hay muchas. La base del constructor está dispersa en muchos archivos y no está reunida en un solo lugar por razones objetivas.


P.D. Por cierto, al principio quería liberar el constructor en un solo archivo y lo recopilé. Resultó ser ~37 mil líneas. Pero incluso en ese archivo no pude señalar la base del constructor, porque no se puede recoger en un solo lugar por razones técnicas.


Espero haber ayudado en la comprensión, ahora voy a ir a trabajar en la liberación))). Si habrá preguntas, voy a tratar de responder en la medida de lo posible)).

 
Реter Konow #:

Las funciones de este archivo enlazan controles de interfaz de varias maneras. Por ejemplo

1. El comando SWITCH_ALL del lenguaje de marcado hace referencia a la configuración de la conmutación del estado de activación para todos los elementos de un grupo. Supongamos que hay 10 botones de radio en un grupo. Este comando hará que los botones se activen al hacer clic sobre ellos sin necesidad de código adicional. Lo mismo se aplica a cualquier elemento - etiquetas, botones simples, casillas de verificación ....... Cualquier elemento en el que se pueda hacer clic. Incluso puede alternar diferentes tipos de elementos. Es muy conveniente utilizar este comando si hay muchos elementos. Si necesita conmutar elementos individuales dentro de un grupo, sus nombres aparecen en SWITCH, . .END, ...

2.2. El comando SYNC actúa de forma similar al parámetro elemento. Sincroniza el cambio de los valores de los parámetros. Por ejemplo, conectemos un deslizador a un cuadro de entrada con un botón, de forma que al introducir un valor en el cuadro de entrada, el deslizador se mueva a la posición deseada. O mueva el control deslizante y cambiará el valor del cuadro de entrada vinculado a él. Si diferentes elementos tienen parámetros, es posible sincronizar los valores de los parámetros de estos elementos. la función "Set_SYNC()" puede ayudar con esto.

3. Cuando se pulsa el elemento principal, C.word BLOQUES abre la lista de elementos a bloquear. la función "Set_lock_elements()" se encarga en parte de ejecutar este comando.

4.4. la función "Set_link_between_fields_and_tabs()" hace exactamente lo que su nombre indica: crea vínculos entre las pestañas pulsadas y el espacio de elementos dentro de la ventana abierta. Es decir, gestiona el fenómeno de los elementos que tiene asignados.


¿Puede considerarse la base de un constructor? Todo lo contrario, es sólo una parte del puzzle, de las que hay muchas. La base del constructor está dispersa en muchos archivos, no en un solo lugar por razones objetivas.


Por cierto, al principio quería publicar los constructores en un solo archivo y recopilarlos. Resultaron ser ~37 000 líneas. Pero incluso en ese archivo no podía señalar la base del constructor porque no se podía recoger en un solo lugar por razones técnicas.


Espero que mi explicación haya sido útil, y ahora voy a trabajar en la versión). (Si todavía hay preguntas, las responderé lo mejor que pueda).

De acuerdo, ¡gracias!
 
hini #:
¿Cómo puedo librarme de las más de cinco mil advertencias que se generan al compilar, muchas de ellas en archivos de lenguaje de marcado?
Que yo sepa solo puedes "librarte" de ellas corrigiendo dichas advertencias.
 
Enrique Enguix #:
Por lo que yo sé, sólo es posible "librarse" de las advertencias corrigiéndolas.
¿Existen directivas para desactivar determinadas advertencias?
Como dice el autor, corregir las advertencias modificando el código fuente no es posible para este proyecto.
 
Tal vez el editor ME debería añadir una función para filtrar la visualización de advertencias. Como hace el IDE de VS.
 
Me complace anunciar que hoy se publica la primera versión completa del constructor.

No vamos a ir a pasos agigantados. Lo haremos todo a la manera clásica. Primero crearemos nuestra primera ventana.

En el archivo estará presente:

1. Indicador KIB-source.mq5

2. Carpeta (1) KIB v1

3. Carpeta (2) KIB PROJECTS


Para empezar a trabajar:

1. Abra el archivo.

2. Copie las carpetas de los elementos 2 y 3 en la carpeta include (sustituyendo las antiguas).

3. Copie el indicador KIB-source en la carpeta indicators (sustituyendo a la antigua).

4. 4. Cargue el Asesor Experto (1) KIB v1 en un gráfico MT5 libre.

5. 5. Compilar el indicador KIB-fuente (nuevo) y ponerlo en el mismo gráfico.

6. 6. Vuelva a compilar el indicador.

7. Debería aparecer una ventana con un botón en el gráfico.

8. 8. Abra el archivo de conexión de esta ventana en el indicador KIB-source (en ME). Verá el código KIB de esta ventana y los comentarios correspondientes.

9. A continuación, continúe...


Nos vemos esta noche.


 

Coge el comunicado.


¡¡¡** IMPORTANTE (se me olvidó decirlo)!!!

NO TE OLVIDES DE RECOMENDAR (1) KIB v1.mq5 antes de instalarlo en la carta.

Archivos adjuntos:
KIB-v26.06.24.zip  1558 kb
 
Реter Konow #:

Coge el comunicado.


¡¡¡¡¡**Importante (olvidé mencionarlo)!!!!!

Antes de instalar KIB v1.mq5 en sus gráficos, no olvide recomendar (1) KIB v1.

¡Buenas noticias!
 
hini #:
¡Buenas noticias!

Gracias.

Para aquellos que quieren empezar a experimentar con la creación de ventanas y elementos, o simplemente para los curiosos, he preparado una lista de los errores más groseros de escribir cyb-code. Este conocimiento ayudará mucho.

Adjunto los archivos en inglés y ruso.

P.D. Ambos archivos se incluirán en la próxima compilación, pero puedes leerlos ahora.

Archivos adjuntos:
 
El ruso para mí, incluso en los nombres de directorio, es prohibitivo.