Interfaz gráfica de usuario de origen colectivo. Prueba beta abierta. - página 7

 

Probablemente no tenga sentido seguir aprendiendo el lenguaje de marcas. ¿Por qué no? Hoy es evidente que el constructor visual va a sustituirlo. Nunca pensé que su diseño quedaría tan claro, pero así ha sido. Una pena, por supuesto, pero ese era el plan. Describiré brevemente la funcionalidad y los principios del editor:

  1. Tres funciones básicas, (como los tres elefantes que sostienen el Mundo):
  • Añade un elemento al núcleo.
  • Retira un elemento del núcleo.
  • Mover un elemento dentro del núcleo.

Dos funciones para editar elementos:

  • Establecer el foco de edición.
  • Editar elemento.

3. Funciones que permiten trabajar con proyectos:

  • Proyecto de carga.
  • Salvar el proyecto.

Las ventanas necesarias para el editor. 4:

  • Selección de controles.
  • Selecciona el enfoque.
  • Selección de propiedades.
  • Ventanas para seleccionar los valores de diferentes propiedades (colores, marcos, fuentes...).
  • Ventanas para configurar los parámetros de las tablas, listas y menús creados.
  • Ventanas de confirmación de acciones.

Ahora, un poco de explicaciones:

  • Función para añadir un elemento al núcleo: Como sabes, el núcleo está dividido en dos áreas - estándar y de usuario. El regular contiene los prototipos de los elementos (dentro de la ventana de selección). En el caso de la transferencia del elemento a la ventana de usuario, el tamaño de la parte de usuario del núcleo se incrementa y el espacio libre se llena con la plantilla del elemento del área de personal. A continuación, se reescribe el orden de numeración de los objetos en el núcleo y el nuevo elemento ocupa su lugar. La parte más difícil es reescribir el núcleo correctamente, ya que en este cambio intervienen muchos parámetros.
  • La función de eliminar un elemento es esencialmente una función invertida de añadir un elemento. Es lo mismo, pero al revés.

  • La función de mover elementos dentro del núcleo manipula esencialmente las dos funciones descritas anteriormente.

  • La función más importante de mi editor es la función de enfoque de edición. Qué es: el usuario selecciona los elementos, objetos y propiedades que van a ser editados. Así es como se hace: al hacer clic en un elemento se pone automáticamente en foco y, a continuación, utilizando la ventana de cambio de foco, se pueden poner en foco todos los elementos de ese tipo, o un solo objeto dentro de un elemento o un conjunto seleccionado de elementos. Es decir, puedes alternar el objetivo de edición. Digamos que seleccionamos 'este elemento' y 'base' como foco, y los editores trabajan con las propiedades de esa base, y si tomamos 'Tipo de elemento en la ventana' y 'Texto' como foco, los editores modifican las propiedades de todos los elementos de texto en la ventana. Y así sucesivamente. Se puede disponer de múltiples opciones de enfoque para que la edición sea cómoda y rápida.
  • La función de edición transfiere los valores de las propiedades de los elementos editados a los parámetros de los editores que trabajan con los valores resultantes, y luego, los devuelve a las propiedades originales, tras lo cual vuelve a dibujar los elementos modificados.

  • La función Cargar Proyecto es una inversión de la función Guardar Proyecto, que funciona con éxito en el constructor (llamado desde el menú e imprime el archivo "CORES"). Toma los núcleos guardados del archivo, y los devuelve al área de usuario desde donde se descargaron al archivo.

  • Las ventanas necesarias para el editor ya están, en parte, colocadas. Hace algún tiempo, hice un vídeo sobre visual studio, donde mostraba la creación de su prototipo. Todas las ventanas necesarias fueron escritas en un lenguaje de marcas. Así, me ahorra tiempo y esfuerzo.
  • Además, en algún lugar de los archivos hay una función de marco azul, que selecciona elementos para su edición.
  • Ya existen funciones para cambiar el tamaño de los elementos (que se muestran en el gif) y para moverlos, que es una parte crucial del proceso de edición.


Eso es todo. Es una realidad absoluta. Así que el lenguaje de marcas se nos está escapando... Personalmente estoy triste...

 
Реter Konow:

Probablemente no tenga sentido seguir aprendiendo el lenguaje de marcas. ¿Por qué no? Hoy es evidente que el constructor visual va a sustituirlo. Nunca pensé que su diseño quedaría tan claro, pero así ha sido.

¡Hurra!
Tú y yo ya hablamos de ello hace casi 3 años :))

 
El martes, presentaré una versión mínima del vis-editor. Creará una ventana, añadirá elementos (de uno en uno), editará la posición, el tamaño, el color (todavía no hay un enfoque elegante) y guardará en el proyecto. El trabajo en el resto de las cosas nos llevará hasta finales de mes, creo. Tal vez un poco más. El editor estará disponible para todos.
 
Nikolai Semko:

¡Sí!
Tú y yo ya hablamos de ello hace casi 3 años :))

Sí, Nikolai:)) Ha sucedido))

 
Nikolai Semko:

¡Sí!
Tú y yo ya hablamos de esto hace casi 3 años :))


Yo también lo dije, que es más fácil escribir un proyecto en peluches o en embarcadero que enseñar markup.....
 

Esta noche (en unas 5 horas...) presentaré un prototipo funcional del editor visual, en el que se pueden añadir elementos y editar propiedades en modo "manual". Te invito a que lo pruebes y des tu opinión. Su desarrollo avanza a una velocidad tremenda, que no esperaba, y lo que verán es sólo el principio. Por lo tanto, no lo juzgue con dureza. Su funcionalidad podría multiplicarse y mejorar muchas veces en cuestión de semanas.

 

Publicado.

Instrucciones rápidas:

Descomprima el archivo e instale el asesor KIB_Studio.ex5 en la carpeta de expertos y el indicador Empty_window.ex5 en la carpeta de indicadores. Ejecute primero el asesor y luego el indicador.

1. Aparecerá la ventana del menú. Contiene controles básicos.

2. Una vez cargado el indicador, aparecerá una ventana vacía para editarlo.

3. Arrastre y suelte los elementos de la ventana del menú en el kanvas de la ventana vacía y edítelos.


La edición incluye las siguientes opciones:

1. Redimensionar los objetos (la base de los elementos (botones) y los textos). Algunos de los artículos no cambian algunos de sus parámetros. Esto se hace para mantener su integridad. Por ejemplo, la lista emergente no cambia la altura y la posición de su texto ni los parámetros de su botón.

2. Mover elementos en el lienzo. Puede mover tanto el elemento completo como sus partes (de nuevo, no para todos los elementos). Para un elemento, el movimiento está limitado por el kanvas, y para sus objetos internos - por el espacio de su base. La corrección es automática.

3. Abra las ventanas de selección de colores, fuentes e iconos haciendo clic en la pestaña "Propiedades principales" del menú. Para editar un objeto, haga clic en él y, a continuación, en los colores, fuentes o iconos deseados, según el objeto de edición seleccionado.

4. Es posible cambiar el tamaño del texto haciendo clic en él, con las flechas arriba y abajo o izquierda y derecha y moviendo el cursor. El texto cambiará su tamaño haciéndose más pequeño o más grande.

5. Puedes cambiar el ángulo del texto girándolo. Para ello, coge la flecha de la esquina superior izquierda y tira. La flecha apunta en diagonal de izquierda a derecha.

6. Es posible escribir en los elementos cambiando su texto. Para ello, haga doble clic en el texto. Aparecerá un cuadro de entrada. Otro clic y el texto queda seleccionado. Luego puedes borrarlo e imprimir otra cosa.

7. Puedes mover los objetos agarrando el centro de su parte superior cuando aparezca una cruz.


Документация по MQL5: Программы MQL5 / Выполнение программ
Документация по MQL5: Программы MQL5 / Выполнение программ
  • www.mql5.com
Каждый скрипт, сервис и эксперт работает в собственном отдельном потоке. Все индикаторы, рассчитываемые на одном символе, даже если они запущены на разных графиках, работают в одном потоке. Таким образом, все индикаторы на одном символе делят между собой ресурсы одного потока. В одном потоке с индикаторами также последовательно выполняются...
 

¡Bien hecho, Peter!
Se ha hecho mucho trabajo.

Se ha hecho un buen comienzo.
¿Se genera el archivo con el código? No pude encontrarlo.

 
Nikolai Semko:

Bien hecho, Piotr.
Buen trabajo hecho.

El comienzo está hecho.
¿Se ha generado el archivo con el código? No lo he encontrado.

Gracias, Nikolai.

Los archivos de arranque y api se generan a través del menú principal (doble clic en el gráfico), pero aún no vale la pena probarlo en esta versión. Allí hay que actualizar el motor y no todo se hace en el propio estudio. Es un poco temprano. A finales de mes intentaré portar todas las características del idioma al editor.

 

que todo va a la configuración de estilo habitual. Hay ciertos momentos, como el botón de enlace, el botón hover, el botón de clic, y sólo el botón. Y para cada momento suelen hacer sus propios estilos, o una mezcla de ellos.

A decir verdad, siempre he entendido mal en este tipo de cosas cómo organizar la configuración del código ejecutado para un botón. Para que sea también visual. Y también con sus propias comprobaciones del código en busca de errores.


Un ejemplo claro de este tipo de trabajo sería la creación de un menú para crear una carta. Es decir, si gráficamente se podrá hacer el menú de la izquierda o de la derecha con código incrustado por así decirlo sobre la marcha.

¿O sólo genera botones en code....?

Документация по MQL5: Константы, перечисления и структуры / Константы объектов / Свойства объектов
Документация по MQL5: Константы, перечисления и структуры / Константы объектов / Свойства объектов
  • www.mql5.com
Все объекты, используемые в техническом анализе, имеют привязку на графиках по координатам цены и времени – трендовая линия, каналы, инструменты Фибоначчи и т.д.  Но есть ряд вспомогательных объектов, предназначенных для улучшения интерфейса, которые имеют привязку к видимой всегда части графика (основное окно графика или подокна индикаторов...