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

 
Maxim Kuznetsov:

ver cómo funciona state-less gui (googlearlo) .

if (Button("hello world!")) {

printf("fck u self");

}

dibuja y reacciona al botón al mismo tiempo

Te funciona.
 
Necesito que el gráfico se muestre bien. ¿Puede ayudar :) ? Los gráficos pueden tener diferentes estructuras.
Hay varios tipos de nodos, los nodos pueden enlazar con varios otros nodos. El gráfico tiene una dirección, que sea de abajo hacia arriba. Para un nodo en la parte inferior el enlace tiene una posición determinada, para un nodo en la parte superior no.
El gráfico puede no estar completamente construido. Por ejemplo, si se supone que hay dos nodos hijos (que está abajo), pero sólo hay uno. También hay una lista de los nodos que están en la cima, o mejor dicho, que son el resultado. También puede ser que varias partes del gráfico estén en la misma estructura.
Si quieres ayudar, te enviaré el código necesario para construir/editar/leer y escribir en un archivo tal estructura, y un archivo de prueba.
Tenga en cuenta que los nodos pueden no caber en la ventana.

Y puedes utilizar el código fuente para tus propios fines.
 

Hace tiempo, cuando vi lo que hacía Pedro, llegué a la conclusión de que estaba un poco nervioso; recuerdo incluso haber escrito en su blog un llamamiento para que despertara, dejara de programar y volviera a operar en el CME.

Pero después de ver este hilo hoy y obtener los resultados de la visualización de la creación de la GUI, entendí que todo tiene su lugar bajo el sol, y nada es nuevo bajo la luna - la actividad de Peter sólo necesita ser entendida. Es decir, no todo el mundo puede seguir el camino del guerrero/samurai/gladiador del comercio y luchar activamente en las arenas financieras, los modernos campos de batalla por los recursos. Alguien tiene que ser artesano, fabricando armas, armaduras, escudos para los guerreros; alguien tiene que ser poeta, componiendo marchas militares. Siempre ha sido así, y lo sigue siendo ahora.

"Crear una gran GUI para aplicaciones mql sin el trabajo duro"- eso es genial, Peter es un gran ajuste en el tema de la creación de conjuntos de herramientas de shell gráfico. Dicho esto, la profesionalidad es una cualidad adquirida; todos nacemos con cero y ganamos experiencia, así que aquí también -habrá una inversión de esfuerzo y tiempo, todo dará lugar a la maestría.

 

Así que Peter, sigue trabajando, ¡te apoyo!

Todo parece bastante lógico en su constructor, pero todavía no he visto una cosa - cómo dar salida a la información que cambia periódicamente de su clase al panel (por ejemplo, la salida de los datos sobre los valores actuales de trailing stops en el conjunto de posiciones, que se vuelven a calcular cada hora).

Una de las características más importantes del editor Xaml de VisualStudio, con el que estás comparando tu constructor, es la posibilidad de establecer la vinculación de los valores de los elementos gráficos a los campos de la clase de programa, y en KIB también necesitas implementar algo así.

 
Aliaksandr Hryshyn:
Es necesario mostrar un gráfico bonito. ¿Puede ayudar :) ? Los gráficos pueden tener diferentes estructuras.
Hay varios tipos de nodos, los nodos pueden enlazar con varios otros nodos. El gráfico tiene una dirección, que sea de abajo hacia arriba. Para un nodo en la parte inferior el enlace tiene una posición determinada, para un nodo en la parte superior no.
El gráfico puede no estar completamente construido. Por ejemplo, si se supone que hay dos nodos hijos (que está abajo), pero sólo hay uno. También hay una lista de los nodos que están en la cima, o mejor dicho, de los nodos que son el resultado. También puede ser que varias partes del gráfico estén en la misma estructura.
Si quieres ayudar, te enviaré el código necesario para construir/editar/leer y escribir en un archivo tal estructura, y un archivo de prueba.
Tenga en cuenta que los nodos pueden no caber en la ventana.

Y puedes utilizar el código fuente para tus propios fines.
Sinceramente, no entiendo de qué estamos hablando. Sería bueno tener un ejemplo claro.

Tal vez pueda ayudar con mis herramientas. El código adicional puede no ser útil. Pero, muéstrame un ejemplo de tal gráfico.
 
Sergey Lebedev:

Así que Peter, sigue trabajando, ¡te apoyo!

Todo parece bastante lógico en su constructor, pero todavía no he visto una cosa - cómo dar salida a la información que cambia periódicamente de su clase al panel (por ejemplo, la salida de los datos sobre los valores actuales de trailing stops en el conjunto de posiciones, que se vuelven a calcular cada hora). Una de las características importantes del editor Xaml de VisualStudio, con el que estás comparando tu diseñador, es la posibilidad de establecer la vinculación de los valores de los elementos gráficos a los campos de la clase del programa, y en KIB también necesitas implementar algo así.

Lo hay. El vínculo entre la interfaz y el código ha sido elaborado. El día 3 publicaré la nueva versión del editor. Espero tener el mínimo listo a tiempo para que pruebes a crear un panel sencillo y lo conectes.


 
Vale, estaré atento a una nueva versión y la probaré entonces.
 
Реter Konow:
Sinceramente, no entiendo de qué estamos hablando. Sería bueno tener un ejemplo claro.

Puede que pueda ayudar con mis propias herramientas. El código extra puede no ser útil. Pero, muéstrame un ejemplo de tal gráfico.

Este ejemplo no es como quiero que se vea, muestra la estructura y algunas características. Los nodos también tienen cierta información, que también debería mostrarse. Dirección ascendente.

No hay manera sin código adicional, permite leer este tipo de estructura de un archivo de texto y obtener toda la información al respecto.

Me gustaría una buena presentación de esta estructura.

Necesita la creación dinámica de elementos gráficos.

Aquí hay un ejemplo de un archivo con este tipo de estructura, puedes ver para qué sirve la estructura :)

STRATEGY
-4:nt_params{order_type=0,my_param=0.44,my_param_X=0.99}//Произвольные параметры с целыми или вещественными типами
-3:indicator_buffers{"indicator_info\Indicator_buffers.csv";"indicator_info\Indicator_buffers1.csv"}//Список индикаторных буферов
-2:caching_start_stop{0.000;0.000}//Точное время кэширования
-1:top{"Test_strategy";"EURUSD";1}=>(6;5)//Узлы на вершине
0:nt_indicator{5968578018034117959}
1:nt_indicator{-410628611689884171}
2:nt_indicator{-1246810214216173993}
3:nt_indicator{947789783589059285}
4:nt_function{signal_ind_down()}=>(3;1;8)
5:nt_function{signal_ind_up()}=>(2;0;8)
6:nt_function{and()}=>(4;7)
7:nt_function{not()}=>(5)
8:nt_const{1}
9:nt_function{and()}=>(10;)//Узел с пустым дочерним узлом и он не связан с основным графом
10:nt_const{10}
STRATEGY_END

Este archivo puede ser leído por el código y hay un fácil acceso a todos los parámetros de la estructura. No todos los tipos de nodos están representados aquí.

No insisto en la ayuda, sé que requiere cierto esfuerzo. Se requiere algún problema de colocación óptima de nodos, no es bueno colocar por lista debido a la mala legibilidad de la estructura.

La estructura no tiene bucles. Para recorrer el grafo se puede utilizar la recursividad partiendo de un vértice, marcando los nodos en los que ya se ha estado. Luego se elige cualquier nodo no marcado y se definen todos los nodos a partir de él, que forman otro gráfico no conectado al principal, etc.

Podría haberlo hecho todo yo, pero ahora hay muchas otras tareas.

 
Aliaksandr Hryshyn:

Este ejemplo, no refleja como quiero que se vea, muestra la estructura y algunas características. Los nodos también tienen alguna información que mostrar. Dirección ascendente.

No hay manera sin código adicional, permite leer este tipo de estructura de un archivo de texto y obtener toda la información sobre ella.

Me gustaría una buena presentación de esta estructura.

Necesita la creación dinámica de elementos gráficos.

Aquí hay un ejemplo de un archivo con este tipo de estructura, puedes ver para qué sirve la estructura :)

Este archivo puede ser leído por el código y hay un fácil acceso a todos los parámetros de la estructura. No todos los tipos de nodos están representados aquí.

No insisto en la ayuda, sé que requiere cierto esfuerzo. Se requiere algún problema de colocación óptima de nodos, no es bueno colocar por lista debido a la mala legibilidad de la estructura.

La estructura no tiene bucles. Para recorrer el grafo se puede utilizar la recursividad partiendo de un vértice, marcando los nodos en los que ya se ha estado. Luego se elige cualquier nodo no marcado y se definen todos los nodos a partir de él, que forman otro gráfico no conectado al principal, etc.

Podría hacerlo todo yo, pero ahora hay muchas otras tareas.

Aclara, ¿son estos "nodos" objetos dinámicos e interactivos, así como los enlaces entre ellos? No es sólo un esquema, ¿verdad? Si es así, vi algo parecido en el Strategy Graphics Builder de Andrey Barinov. ¿Es eso lo que quieres decir?

¿La lógica de los enlaces entre nodos es inmutable y sigue reglas predefinidas, o es un esquema frívolo creado a su antojo?

En principio, no veo nada difícil crearla. Son dos o tres días de trabajo. No necesito ningún código adicional. Lo haré yo mismo, después de las cosas principales que son prioritarias en este momento.

 
Sergey Lebedev:

Hace algún tiempo, cuando vi lo que hacía Pedro, llegué a la conclusión de que estaba un poco nervioso; recuerdo incluso que escribí un blog sobre él instándole a que despertara, dejara de programar y volviera a operar en el CME.

...

"Crear una gran interfaz gráfica de usuario para aplicaciones mql sin ningún tipo de trabajo duro" - eso es genial, Peter está bien en el tema de la creación de herramientas GUI. Al mismo tiempo, la profesionalidad es una cualidad adquirida; todos nacemos con cero y ganamos experiencia, así como aquí - habrá una inversión de esfuerzo y tiempo, todo dará una maestría.

¡Está bien!

La única cuestión es si necesitas usar toda esa belleza.

Ese es el inconveniente de todas las bibliotecas gráficas que se han ofrecido en este foro: no han aumentado los ingresos, ni la eficacia de su adquisición.

Sí, es hermoso. Sí, es fácil de usar.

Pero, ¿qué sentido tiene todo esto?

Los que usan robots no necesitan características gráficas.

Los que operan manualmente pueden estar satisfechos con unos cuantos botones y líneas de informe.

Interfaz gráfica de la marca: ¿quién puede necesitarla?

Aparte de aumentar la altivez de Peter, no veo ningún otro uso para esta biblioteca gráfica. Sin embargo, es algo muy útil.